Sha256: 11e0ee5bf520fb12c04e7214c09cee8b357f09b96eb69635c8cad995ac719dd7

Contents?: true

Size: 459 Bytes

Versions: 21

Compression:

Stored size: 459 Bytes

Contents

module CassandraObject
  module Types
    class DateType < BaseType
      FORMAT = '%Y-%m-%d'
      REGEX = /\A\d{4}-\d{2}-\d{2}\Z/

      def encode(value)
        raise ArgumentError.new("#{value.inspect} is not a Date") unless value.kind_of?(Date)
        value.strftime(FORMAT)
      end

      def decode(str)
        return nil if str.empty?
        Date.parse(str)
      end

      def typecast(value)
        value.to_date
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
extendi-cassandra_object-1.1.1 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.1.0 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.20 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.19 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.18 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.17 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.16 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.15 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.14 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.13 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.12 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.11 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.10 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.9 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.8 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.7 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.6 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.5 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.4 lib/cassandra_object/types/date_type.rb
extendi-cassandra_object-1.0.1 lib/cassandra_object/types/date_type.rb