Module: Serializable::SingletonMethods
- Defined in:
- lib/acts_as_serializable.rb
Instance Method Summary collapse
- #default_serialization_version ⇒ Object
- #default_serialization_version=(new_version) ⇒ Object
- #find_project_serialization_classes(project_path) ⇒ Object
- #serialization_versions ⇒ Object
Instance Method Details
#default_serialization_version ⇒ Object
49 50 51 |
# File 'lib/acts_as_serializable.rb', line 49 def default_serialization_version @default_serialization_version end |
#default_serialization_version=(new_version) ⇒ Object
53 54 55 56 57 58 59 |
# File 'lib/acts_as_serializable.rb', line 53 def default_serialization_version=(new_version) if new_version.is_a?(Version) @default_serialization_version = new_version else @default_serialization_version = Version.new(new_version) end end |
#find_project_serialization_classes(project_path) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/acts_as_serializable.rb', line 30 def find_project_serialization_classes(project_path) klass_name = self.name serialization_directory = File.join(project_path, 'serializations', klass_name.underscore) Find.find(serialization_directory) do |path| if File.file?(path) && versioned_klass = path.match(SERIALIZED_CLASS_NAME_REGEXP) require path klass = Serializable.const_get("#{klass_name}").const_get("Version_#{versioned_klass[1]}") if klass && klass.respond_to?(:serialize) define_local_serialization_method(versioned_klass[1]) end end end @default_serialization_version = @serialization_versions.last end |
#serialization_versions ⇒ Object
45 46 47 |
# File 'lib/acts_as_serializable.rb', line 45 def serialization_versions @serialization_versions end |