changing name to cqlengine

This commit is contained in:
Blake Eggleston
2012-11-18 17:34:35 -08:00
parent 7180033621
commit eab79f6900
17 changed files with 74 additions and 43 deletions

View File

@@ -1,3 +0,0 @@
from cassandraengine.columns import *
from cassandraengine.models import Model

View File

@@ -1,16 +0,0 @@
#tests the behavior of the column classes
from cassandraengine.tests.base import BaseCassEngTestCase
from cassandraengine.columns import BaseColumn
from cassandraengine.columns import Bytes
from cassandraengine.columns import Ascii
from cassandraengine.columns import Text
from cassandraengine.columns import Integer
from cassandraengine.columns import DateTime
from cassandraengine.columns import UUID
from cassandraengine.columns import Boolean
from cassandraengine.columns import Float
from cassandraengine.columns import Decimal

3
cqlengine/__init__.py Normal file
View File

@@ -0,0 +1,3 @@
from cqlengine.columns import *
from cqlengine.models import Model

View File

@@ -2,12 +2,43 @@
import re
from uuid import uuid1, uuid4
from cassandraengine.exceptions import ValidationError
from cqlengine.exceptions import ValidationError
class BaseValueManager(object):
def __init__(self, instance, column, value):
self.instance = instance
self.column = column
self.initial_value = value
self.value = value
def deleted(self):
return self.value is None and self.initial_value is not None
def getval(self):
return self.value
def setval(self, val):
self.value = val
def delval(self):
self.value = None
def get_property(self):
_get = lambda slf: self.getval()
_set = lambda slf, val: self.setval(val)
_del = lambda slf: self.delval()
if self.column.can_delete:
return property(_get, _set, _del)
else:
return property(_get, _set)
class BaseColumn(object):
#the cassandra type this column maps to
db_type = None
value_manager = BaseValueManager
instance_counter = 0
@@ -64,6 +95,10 @@ class BaseColumn(object):
def is_primary_key(self):
return self.primary_key
@property
def can_delete(self):
return not self.primary_key
#methods for replacing column definitions with properties that interact
#with a column's value member
#this will allow putting logic behind value access (lazy loading, etc)

View File

@@ -1,4 +1,4 @@
#cassandraengine exceptions
#cqlengine exceptions
class ModelException(BaseException): pass
class ValidationError(BaseException): pass

View File

@@ -1,6 +1,6 @@
#manager class
from cassandraengine.query import QuerySet
from cqlengine.query import QuerySet
class Manager(object):

View File

@@ -1,8 +1,8 @@
from collections import OrderedDict
from cassandraengine import columns
from cassandraengine.exceptions import ModelException
from cassandraengine.manager import Manager
from cqlengine import columns
from cqlengine.exceptions import ModelException
from cqlengine.manager import Manager
class BaseModel(object):
"""
@@ -11,18 +11,14 @@ class BaseModel(object):
#table names will be generated automatically from it's model name and package
#however, you can alse define them manually here
db_name = None
db_name = None
def __init__(self, **values):
#set columns from values
for k,v in values.items():
if k in self._columns:
setattr(self, k, v)
#set excluded columns to None
for k in self._columns.keys():
if k not in values:
setattr(self, k, None)
self._values = {}
for name, column in self._columns.items():
value_mngr = column.value_manager(self, column, values.get(name, None))
self._values[name] = value_mngr
setattr(self, name, value_mngr.get_property())
@classmethod
def find(cls, pk):

View File

@@ -1,6 +1,6 @@
import copy
from cassandraengine.connection import get_connection
from cqlengine.connection import get_connection
#CQL 3 reference:
#http://www.datastax.com/docs/1.1/references/cql/index

View File

@@ -0,0 +1,16 @@
#tests the behavior of the column classes
from cqlengine.tests.base import BaseCassEngTestCase
from cqlengine.columns import BaseColumn
from cqlengine.columns import Bytes
from cqlengine.columns import Ascii
from cqlengine.columns import Text
from cqlengine.columns import Integer
from cqlengine.columns import DateTime
from cqlengine.columns import UUID
from cqlengine.columns import Boolean
from cqlengine.columns import Float
from cqlengine.columns import Decimal

View File

@@ -1,8 +1,8 @@
from cassandraengine.tests.base import BaseCassEngTestCase
from cqlengine.tests.base import BaseCassEngTestCase
from cassandraengine.exceptions import ModelException
from cassandraengine.models import Model
from cassandraengine import columns
from cqlengine.exceptions import ModelException
from cqlengine.models import Model
from cqlengine import columns
class TestModelClassFunction(BaseCassEngTestCase):
"""

View File

@@ -1,8 +1,8 @@
from unittest import skip
from cassandraengine.tests.base import BaseCassEngTestCase
from cqlengine.tests.base import BaseCassEngTestCase
from cassandraengine.models import Model
from cassandraengine import columns
from cqlengine.models import Model
from cqlengine import columns
class TestModel(Model):
count = columns.Integer()