Sha256: 4800353fd697404b90878b7c6cf27cfe93defcc3242964236ecffcb45545ae3a

Contents?: true

Size: 948 Bytes

Versions: 12

Compression:

Stored size: 948 Bytes

Contents

#require "activesupport/lib/active_support/core_ext/hash/keys.rb"

module Neo4j
  module TypeConverters
    # Serialize using YAML
    #
    # @example Usage from Neo4j::Rails::Model
    #   class Person < Neo4j::Rails::Model
    #     property :stuff, :type => :serialize
    #   end
    #   Person.new(:stuff => {:complex => :things})
    #
    # @see http://rdoc.info/github/andreasronge/neo4j-wrapper/Neo4j/TypeConverters for converters defined in neo4j-wrapper gem (which is included).
    class SerializeConverter
      # serializes to sting
      class << self

        def convert?(type)
          type == :serialize
        end

        def to_java(value)
          return nil unless value
          YAML.dump(value)
        end

        def to_ruby(value)
          # from db, to object
          return nil unless value
          YAML.load(value)
        end

        def index_as
          String
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
neo4j-2.3.0-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.2.4-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.2.3-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.2.1-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.2.0-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.2.0.rc1-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.1-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.0-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.0.rc2-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.0.rc1-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.0.alpha.9-java lib/neo4j/type_converters/serialize_converter.rb
neo4j-2.0.0.alpha.8-java lib/neo4j/type_converters/serialize_converter.rb