class CoreData::DataModel
Attributes
entities[R]
name[R]
version[R]
Public Class Methods
new(data_model)
click to toggle source
# File lib/core_data/data_model.rb, line 9 def initialize(data_model) loop do case data_model when File, /^\<\?xml/ (data_model = ::Nokogiri::XML(data_model)) && redo when String case data_model when /\.xcdatamodeld?$/ (data_model = Dir[File.join(data_model, '/**/contents')].first) && redo else (data_model = ::File.read(data_model)) && redo end when ::Nokogiri::XML::Document break else raise ArgumentError end end model = data_model.at_xpath('model') @name = model['name'] @version = model['systemVersion'] @entities = model.xpath('entity').collect { |element| Entity.new(element) } end