Class: ConfConf::Project::Developers
- Inherits:
-
Struct
- Object
- Struct
- ConfConf::Project::Developers
- Defined in:
- lib/conf_conf/project/developers.rb
Instance Attribute Summary collapse
-
#project ⇒ Object
Returns the value of attribute project.
Class Method Summary collapse
Instance Method Summary collapse
- #add(developer) ⇒ Object
- #keys ⇒ Object
- #keys=(keys) ⇒ Object
- #remove(developer) ⇒ Object
- #save ⇒ Object
- #to_a ⇒ Object
Instance Attribute Details
#project ⇒ Object
Returns the value of attribute project
3 4 5 |
# File 'lib/conf_conf/project/developers.rb', line 3 def project @project end |
Class Method Details
.load(project) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/conf_conf/project/developers.rb', line 5 def load(project) developers = Developers.new(project) if File.exists?(Developers.path) developers_json = File.read(Developers.path) developers_keys = MultiJson.load(developers_json) developers.keys = developers_keys end developers end |
.path ⇒ Object
17 18 19 |
# File 'lib/conf_conf/project/developers.rb', line 17 def path File.join('config', 'conf_conf', 'developers.json') end |
Instance Method Details
#add(developer) ⇒ Object
22 23 24 |
# File 'lib/conf_conf/project/developers.rb', line 22 def add(developer) keys.add(developer.pretty_public_key).to_a end |
#keys ⇒ Object
34 35 36 |
# File 'lib/conf_conf/project/developers.rb', line 34 def keys @keys ||= Set.new end |
#keys=(keys) ⇒ Object
30 31 32 |
# File 'lib/conf_conf/project/developers.rb', line 30 def keys=(keys) @keys = Set.new(keys) end |
#remove(developer) ⇒ Object
26 27 28 |
# File 'lib/conf_conf/project/developers.rb', line 26 def remove(developer) keys.delete(developer.pretty_public_key).to_a end |
#save ⇒ Object
42 43 44 45 |
# File 'lib/conf_conf/project/developers.rb', line 42 def save developers_json = MultiJson.dump(keys.to_a) File.write(Developers.path, developers_json) end |
#to_a ⇒ Object
38 39 40 |
# File 'lib/conf_conf/project/developers.rb', line 38 def to_a keys.collect { |key| Developer.new(key) } end |