Class: Projects
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.
- #make(args) ⇒ Object
- #open(filename = '') ⇒ Object
- #pull ⇒ Object
- #rake ⇒ Object
- #save(filename = '') ⇒ Object
- #show(filter = '') ⇒ Object
- #update ⇒ Object
Methods inherited from Hash
Constructor Details
#initialize ⇒ Projects
Returns a new instance of Projects.
13 14 15 |
# File 'lib/base/projects.rb', line 13 def initialize @filename='' end |
Instance Attribute Details
#filename ⇒ Object
Returns the value of attribute filename.
11 12 13 |
# File 'lib/base/projects.rb', line 11 def filename @filename end |
Class Method Details
.current ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/base/projects.rb', line 58 def self.current project=nil url=Git.remote_origin url=Svn.url if url.length==0 if(Rake.application.original_dir.include?('/wrk/') && url.length > 0) project=Project.new(url) name=Rake.application.original_dir.gsub("#{Environment.dev_root}/wrk/",'') project[:name] = name if(name.length>0 && !name.include?(Environment.dev_root)) if(defined?(PROJECTS)) PROJECTS[name]=project if(!PROJECTS.has_key?(name)) project.each{|k,v|PROJECTS[name][k]=v} PROJECTS.save else project[:name]=name end end project end |
.user_projects_filename ⇒ Object
53 54 55 56 |
# File 'lib/base/projects.rb', line 53 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
#make(args) ⇒ Object
42 43 44 45 46 47 48 49 50 51 |
# File 'lib/base/projects.rb', line 42 def make args filter='' filter=args[1] if !args.nil? && args.length > 0 self.each{|k,v| if filter.nil? || filter.length==0 || k.include?(filter) puts "making #{k}" v.make end } end |
#open(filename = '') ⇒ Object
30 31 32 33 34 |
# File 'lib/base/projects.rb', line 30 def open filename='' @filename=filename if filename.length > 0 JSON.parse(IO.read(@filename)).each{|k,v| self[k]=v} update end |
#pull ⇒ Object
78 79 80 |
# File 'lib/base/projects.rb', line 78 def pull self.each{|k,v| v.pull if v.respond_to?("pull".to_sym)} end |
#rake ⇒ Object
81 82 83 |
# File 'lib/base/projects.rb', line 81 def rake self.each{|k,v| v.rake if v.respond_to?("rake".to_sym)} end |
#save(filename = '') ⇒ Object
25 26 27 28 |
# File 'lib/base/projects.rb', line 25 def save filename='' @filename=filename if !filename.nil? && filename.length > 0 File.open(@filename,'w'){|f|f.write(JSON.pretty_generate(self))} if @filename.length > 0 end |
#show(filter = '') ⇒ Object
36 37 38 39 40 |
# File 'lib/base/projects.rb', line 36 def show filter='' self.each{|k,v| puts k if(filter.length == 0 || k.include?(filter)) } end |