Sha256: 5531a21d9ac96d21764c76dcf95562a8ebcf6dab28f2126ee3eaab26b2bb2b4c

Contents?: true

Size: 634 Bytes

Versions: 12

Compression:

Stored size: 634 Bytes

Contents

module ModernTimes
  module MarshalStrategy
    module BSON
      extend self
      
      def marshal_type
        :bytes
      end

      begin
        require 'bson'
        def marshal(object)
          ::BSON.serialize(object).to_s
        end

        def unmarshal(msg)
          ::BSON.deserialize(msg)
        end

      rescue LoadError => e
        def marshal(object)
          raise 'Error: BSON marshaling specified but bson gem has not been installed'
        end

        def unmarshal(msg)
          raise 'Error: BSON marshaling specified but bson gem has not been installed'
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
modern_times-0.2.11 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.10 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.9 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.8 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.7 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.6 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.5 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.4 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.3 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.2 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.1 lib/modern_times/marshal_strategy/bson.rb
modern_times-0.2.0 lib/modern_times/marshal_strategy/bson.rb