Class: PuzzlyApiPlugin::Topic
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Metadata
#id, #name, #path, #to_identity
Methods inherited from JSONable
#copy_to_hash, #to_s
Constructor Details
#initialize(document, schema_id, name, description) ⇒ Topic
Returns a new instance of Topic.
12
13
14
15
16
17
18
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 12
def initialize(document, schema_id, name, description)
super(document, name)
self[MetadataFields::SCHEMA_ID] = schema_id
self[MetadataFields::DESCRIPTION] = description
validate
end
|
Class Method Details
.create(document) ⇒ Object
5
6
7
8
9
10
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 5
def self.create(document)
Topic.new(document,
document.data[YAMLFields::SCHEMA_ID],
document.data[YAMLFields::TOPIC_NAME],
document.data[YAMLFields::TOPIC_DESCRIPTION])
end
|
Instance Method Details
#description ⇒ Object
42
43
44
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 42
def description
self[MetadataFields::DESCRIPTION]
end
|
#module_id ⇒ Object
34
35
36
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 34
def module_id
self[MetadataFields::MODULE_ID]
end
|
#schema_id ⇒ Object
38
39
40
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 38
def schema_id
self[MetadataFields::SCHEMA_ID]
end
|
#validate ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/puzzly_api_plugin/metadata/topic.rb', line 20
def validate
if(schema_id.nil?)
warn "Please set #{YAMLFields::SCHEMA_ID} property"
end
if(name.nil?)
warn "Please set #{YAMLFields::TABLE_NAME} property"
end
if(description.nil?)
warn "Please set #{YAMLFields::TABLE_DESCRIPTION} property"
end
end
|