Class: CoreDataMotion::EntityDefinition
- Inherits:
-
Object
- Object
- CoreDataMotion::EntityDefinition
- Defined in:
- lib/core_data_motion/entity_definition.rb
Instance Attribute Summary collapse
-
#document_version ⇒ Object
Returns the value of attribute document_version.
-
#i_os_version ⇒ Object
Returns the value of attribute i_os_version.
-
#last_saved_tools_version ⇒ Object
Returns the value of attribute last_saved_tools_version.
-
#mac_os_version ⇒ Object
Returns the value of attribute mac_os_version.
-
#minimum_tools_version ⇒ Object
Returns the value of attribute minimum_tools_version.
-
#name ⇒ Object
Returns the value of attribute name.
-
#system_version ⇒ Object
Returns the value of attribute system_version.
-
#type ⇒ Object
Returns the value of attribute type.
-
#version_id ⇒ Object
Returns the value of attribute version_id.
Instance Method Summary collapse
- #create_entity(entity_name, &b) ⇒ Object
- #entities ⇒ Object
-
#initialize ⇒ EntityDefinition
constructor
A new instance of EntityDefinition.
- #to_xml ⇒ Object
- #xml_attributes ⇒ Object
- #xml_attributes_as_string ⇒ Object
Constructor Details
#initialize ⇒ EntityDefinition
Returns a new instance of EntityDefinition.
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/core_data_motion/entity_definition.rb', line 12 def initialize @name = "" @version_id = "" @type = "com.apple.IDECoreDataModeler.DataModel" @document_version = "1.0" @last_saved_tools_version = "2061" @system_version = "12D78" @minimum_tools_version = "Automatic" @mac_os_version = "Automatic" @i_os_version = "Automatic" end |
Instance Attribute Details
#document_version ⇒ Object
Returns the value of attribute document_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def document_version @document_version end |
#i_os_version ⇒ Object
Returns the value of attribute i_os_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def i_os_version @i_os_version end |
#last_saved_tools_version ⇒ Object
Returns the value of attribute last_saved_tools_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def last_saved_tools_version @last_saved_tools_version end |
#mac_os_version ⇒ Object
Returns the value of attribute mac_os_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def mac_os_version @mac_os_version end |
#minimum_tools_version ⇒ Object
Returns the value of attribute minimum_tools_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def minimum_tools_version @minimum_tools_version end |
#name ⇒ Object
Returns the value of attribute name.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def name @name end |
#system_version ⇒ Object
Returns the value of attribute system_version.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def system_version @system_version end |
#type ⇒ Object
Returns the value of attribute type.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def type @type end |
#version_id ⇒ Object
Returns the value of attribute version_id.
2 3 4 |
# File 'lib/core_data_motion/entity_definition.rb', line 2 def version_id @version_id end |
Instance Method Details
#create_entity(entity_name, &b) ⇒ Object
28 29 30 31 32 33 34 |
# File 'lib/core_data_motion/entity_definition.rb', line 28 def create_entity(entity_name, &b) entity = CDM::EntityDescriptor.new(entity_name) if block_given? yield(entity) end entities.push entity end |
#entities ⇒ Object
24 25 26 |
# File 'lib/core_data_motion/entity_definition.rb', line 24 def entities @entities ||= [] end |
#to_xml ⇒ Object
55 56 57 58 59 60 61 62 63 |
# File 'lib/core_data_motion/entity_definition.rb', line 55 def to_xml xml = [ "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>", "<model #{xml_attributes_as_string}>", entities.map(&:to_xml), "</model>" ] xml.flatten.join("\n") end |
#xml_attributes ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/core_data_motion/entity_definition.rb', line 36 def xml_attributes attrs = { name: name, userDefinedModelVersionIdentifier: version_id, type: type, documentVersion: document_version, lastSavedToolsVersion: last_saved_tools_version, systemVersion: system_version, minimumToolsVersion: minimum_tools_version, macOSVersion: mac_os_version, iOSVersion: i_os_version } attrs.reject { |k, v| v.nil? } end |
#xml_attributes_as_string ⇒ Object
51 52 53 |
# File 'lib/core_data_motion/entity_definition.rb', line 51 def xml_attributes_as_string xml_attributes.map { |k, v| "#{k}=\"#{v}\"" }.join(" ") end |