Class: Projects
- Inherits:
-
Hash
- Object
- Hash
- Projects
- Defined in:
- lib/projects.rb
Instance Attribute Summary collapse
-
#filename ⇒ Object
Returns the value of attribute filename.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize ⇒ Projects
constructor
A new instance of Projects.
- #open(filename = '') ⇒ Object
- #save(filename = '') ⇒ Object
- #update ⇒ Object
Constructor Details
#initialize ⇒ Projects
Returns a new instance of Projects.
7 8 9 |
# File 'lib/projects.rb', line 7 def initialize @filename='' end |
Instance Attribute Details
#filename ⇒ Object
Returns the value of attribute filename.
5 6 7 |
# File 'lib/projects.rb', line 5 def filename @filename end |
Class Method Details
.user_projects_filename ⇒ Object
30 31 32 33 |
# File 'lib/projects.rb', line 30 def self.user_projects_filename FileUtils.mkdir("#{Environment.dev_root}/data") if(!File.exists?("#{Environment.dev_root}/data")) "#{Environment.dev_root}/data/PROJECTS.json" end |
Instance Method Details
#open(filename = '') ⇒ Object
24 25 26 27 28 |
# File 'lib/projects.rb', line 24 def open filename='' @filename=filename if filename.length > 0 JSON.parse(IO.read(@filename)).each{|k,v| self[k]=v} update end |
#save(filename = '') ⇒ Object
19 20 21 22 |
# File 'lib/projects.rb', line 19 def save filename='' @filename=filename if !filename.nil? && filename.length > 0 File.open(@filename,'w'){|f|f.write(self.to_json)} if @filename.length > 0 end |
#update ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/projects.rb', line 11 def update self.each{|k,v| self[k]=Project.new(v) if(v.is_a?(String)) self[k]=Project.new(v) if(!v.is_a?(Project) && v.is_a?(Hash)) self[k][:name]=k } end |