Ejemplo n.º 1
0
    def _set_default_validation_class(self, t):
        if isinstance(t, types.CassandraType):
            self._default_validation_class = t
            self._default_value_packer = t.pack
            self._default_value_unpacker = t.unpack
            have_counters = isinstance(t, types.CounterColumnType)
        else:
            self._default_validation_class = marshal.extract_type_name(t)
            self._default_value_packer = marshal.packer_for(t)
            self._default_value_unpacker = marshal.unpacker_for(t)
            have_counters = self._default_validation_class == "CounterColumnType"
        
        if not self.super:
            if have_counters:
                def _make_cosc(name, value, timestamp, ttl):
                    return ColumnOrSuperColumn(counter_column=CounterColumn(name, value))
            else:
                def _make_cosc(name, value, timestamp, ttl):
                    return ColumnOrSuperColumn(Column(name, value, timestamp, ttl))
            self._make_cosc = _make_cosc
        else:
            if have_counters:
                def _make_column(name, value, timestamp, ttl):
                    return CounterColumn(name, value)
                self._make_column = _make_column

                def _make_cosc(scol_name, subcols):
                    return ColumnOrSuperColumn(counter_super_column=(SuperColumn(scol_name, subcols)))
            else:
                self._make_column = Column
                def _make_cosc(scol_name, subcols):
                    return ColumnOrSuperColumn(super_column=(SuperColumn(scol_name, subcols)))
            self._make_cosc = _make_cosc
Ejemplo n.º 2
0
 def __setitem__(self, item, value):
     if isinstance(value, types.CassandraType):
         self.type_map[item] = value
         self.packers[item] = value.pack
         self.unpackers[item] = value.unpack
     else:
         self.type_map[item] = marshal.extract_type_name(value)
         self.packers[item] = marshal.packer_for(value)
         self.unpackers[item] = marshal.unpacker_for(value)
Ejemplo n.º 3
0
 def _set_key_validation_class(self, t):
     if isinstance(t, types.CassandraType):
         self._key_validation_class = t
         self._key_packer = t.pack
         self._key_unpacker = t.unpack
     else:
         self._key_validation_class = marshal.extract_type_name(t)
         self._key_packer = marshal.packer_for(t)
         self._key_unpacker = marshal.unpacker_for(t)
Ejemplo n.º 4
0
 def _set_super_column_name_class(self, t):
     if isinstance(t, types.CassandraType):
         self._super_column_name_class = t
         self._super_name_packer = t.pack
         self._super_name_unpacker = t.unpack
     else:
         self._super_column_name_class = marshal.extract_type_name(t)
         self._super_name_packer = marshal.packer_for(t)
         self._super_name_unpacker = marshal.unpacker_for(t)
Ejemplo n.º 5
0
 def _set_key_validation_class(self, t):
     if isinstance(t, types.CassandraType):
         self._key_validation_class = t
         self._key_packer = t.pack
         self._key_unpacker = t.unpack
     else:
         self._key_validation_class = marshal.extract_type_name(t)
         self._key_packer = marshal.packer_for(t)
         self._key_unpacker = marshal.unpacker_for(t)
Ejemplo n.º 6
0
 def _set_super_column_name_class(self, t):
     if isinstance(t, types.CassandraType):
         self._super_column_name_class = t
         self._super_name_packer = t.pack
         self._super_name_unpacker = t.unpack
     else:
         self._super_column_name_class = marshal.extract_type_name(t)
         self._super_name_packer = marshal.packer_for(t)
         self._super_name_unpacker = marshal.unpacker_for(t)
Ejemplo n.º 7
0
 def __setitem__(self, item, value):
     if isinstance(value, types.CassandraType):
         self.type_map[item] = value
         self.packers[item] = value.pack
         self.unpackers[item] = value.unpack
     else:
         self.type_map[item] = marshal.extract_type_name(value)
         self.packers[item] = marshal.packer_for(value)
         self.unpackers[item] = marshal.unpacker_for(value)
Ejemplo n.º 8
0
    def _set_default_validation_class(self, t):
        if isinstance(t, types.CassandraType):
            self._default_validation_class = t
            self._default_value_packer = t.pack
            self._default_value_unpacker = t.unpack
            self._have_counters = isinstance(t, types.CounterColumnType)
        else:
            self._default_validation_class = marshal.extract_type_name(t)
            self._default_value_packer = marshal.packer_for(t)
            self._default_value_unpacker = marshal.unpacker_for(t)
            self._have_counters = self._default_validation_class == "CounterColumnType"

        if not self.super:
            if self._have_counters:

                def _make_counter_cosc(name, value, timestamp, ttl):
                    return ColumnOrSuperColumn(
                        counter_column=CounterColumn(name, value))

                self._make_cosc = _make_counter_cosc
            else:

                def _make_normal_cosc(name, value, timestamp, ttl):
                    return ColumnOrSuperColumn(
                        Column(name, value, timestamp, ttl))

                self._make_cosc = _make_normal_cosc
        else:
            if self._have_counters:

                def _make_column(name, value, timestamp, ttl):
                    return CounterColumn(name, value)

                self._make_column = _make_column

                def _make_counter_super_cosc(scol_name, subcols):
                    return ColumnOrSuperColumn(
                        counter_super_column=(SuperColumn(scol_name, subcols)))

                self._make_cosc = _make_counter_super_cosc
            else:
                self._make_column = Column

                def _make_super_cosc(scol_name, subcols):
                    return ColumnOrSuperColumn(
                        super_column=(SuperColumn(scol_name, subcols)))

                self._make_cosc = _make_super_cosc