Class: YouTrack::Client::Project
- Defined in:
- lib/you_track/client/models/project.rb
Instance Attribute Summary collapse
-
#lead ⇒ Object
Returns the value of attribute lead.
-
#prefix ⇒ Object
Returns the value of attribute prefix.
-
#starting_number ⇒ Object
Returns the value of attribute starting_number.
Instance Method Summary collapse
- #add_version(version) ⇒ Object
- #custom_fields ⇒ Object
- #issues ⇒ Object
- #reload ⇒ Object
- #remove_version(version) ⇒ Object
- #save ⇒ Object
Methods inherited from Model
Instance Attribute Details
#lead ⇒ Object
Returns the value of attribute lead.
10 11 12 |
# File 'lib/you_track/client/models/project.rb', line 10 def lead @lead end |
#prefix ⇒ Object
Returns the value of attribute prefix.
10 11 12 |
# File 'lib/you_track/client/models/project.rb', line 10 def prefix @prefix end |
#starting_number ⇒ Object
Returns the value of attribute starting_number.
10 11 12 |
# File 'lib/you_track/client/models/project.rb', line 10 def starting_number @starting_number end |
Instance Method Details
#add_version(version) ⇒ Object
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/you_track/client/models/project.rb', line 45 def add_version(version) require_admin! unless versions.include?(version) service.add_project_fix_version('project' => self.id, 'version' => version) self.versions << version end self.versions end |
#custom_fields ⇒ Object
16 17 18 |
# File 'lib/you_track/client/models/project.rb', line 16 def custom_fields service.get_project_custom_fields(self.id).body end |
#issues ⇒ Object
12 13 14 |
# File 'lib/you_track/client/models/project.rb', line 12 def issues service.issues.all(self.identity) end |
#reload ⇒ Object
56 57 58 |
# File 'lib/you_track/client/models/project.rb', line 56 def reload merge_attributes(collection.reload.get(self.identity).attributes) end |
#remove_version(version) ⇒ Object
60 61 62 63 64 65 66 67 68 69 |
# File 'lib/you_track/client/models/project.rb', line 60 def remove_version(version) require_admin! if versions.include?(version) service.remove_project_fix_version('project' => self.id, 'version' => version) self.versions.delete(version) end self.versions end |
#save ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/you_track/client/models/project.rb', line 20 def save if new_record? requires :name, :prefix starting_number = self.starting_number || 1 lead = self.lead || service.current_user lead_id = (lead.is_a?(YouTrack::Client::User) ? lead.identity : lead) service.create_project( "projectId" => self.prefix, "projectName" => self.name, "startingNumber" => starting_number, "projectLeadLogin" => lead_id, "description" => self.description, ) merge_attributes( :identity => self.prefix, ) else raise NotImplementedError end end |