Class: PlanMyStuff::CommentMetadata
- Inherits:
-
BaseMetadata
- Object
- BaseMetadata
- PlanMyStuff::CommentMetadata
- Defined in:
- lib/plan_my_stuff/comment_metadata.rb
Constant Summary
Constants inherited from BaseMetadata
Instance Attribute Summary collapse
-
#issue_body ⇒ Boolean
True if this comment holds the issue’s body content.
Attributes inherited from BaseMetadata
#app_name, #created_by, #custom_fields, #gem_version, #rails_env, #schema_version, #visibility
Class Method Summary collapse
-
.build(user:, visibility: 'internal', custom_fields: {}, issue_body: false) ⇒ CommentMetadata
Builds a new CommentMetadata for comment creation, auto-filling gem defaults.
-
.from_hash(hash) ⇒ CommentMetadata
Builds a CommentMetadata from a parsed hash (e.g. from MetadataParser).
Instance Method Summary collapse
-
#initialize ⇒ CommentMetadata
constructor
A new instance of CommentMetadata.
- #issue_body? ⇒ Boolean
- #to_h ⇒ Hash
Methods inherited from BaseMetadata
#internal?, #public?, #to_json, #validate_custom_fields!
Constructor Details
#initialize ⇒ CommentMetadata
Returns a new instance of CommentMetadata.
47 48 49 50 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 47 def initialize super @issue_body = false end |
Instance Attribute Details
#issue_body ⇒ Boolean
Returns true if this comment holds the issue’s body content.
6 7 8 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 6 def issue_body @issue_body end |
Class Method Details
.build(user:, visibility: 'internal', custom_fields: {}, issue_body: false) ⇒ CommentMetadata
Builds a new CommentMetadata for comment creation, auto-filling gem defaults
32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 32 def build(user:, visibility: 'internal', custom_fields: {}, issue_body: false) = new apply_common_build( , user: user, visibility: visibility, custom_fields_data: custom_fields, custom_fields_schema: PlanMyStuff.configuration.custom_fields_for(:comment), ) .issue_body = issue_body end |
.from_hash(hash) ⇒ CommentMetadata
Builds a CommentMetadata from a parsed hash (e.g. from MetadataParser)
15 16 17 18 19 20 21 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 15 def from_hash(hash) = new apply_common_from_hash(, hash, PlanMyStuff.configuration.custom_fields_for(:comment)) .issue_body = hash[:issue_body] || false end |
Instance Method Details
#issue_body? ⇒ Boolean
53 54 55 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 53 def issue_body? issue_body == true end |
#to_h ⇒ Hash
58 59 60 |
# File 'lib/plan_my_stuff/comment_metadata.rb', line 58 def to_h super.merge(issue_body: issue_body) end |