class CqlStoredEvent(Model): __table_name__ = 'stored_events' # Stored entity ID (normally a string, with the entity type name at the start) n = columns.Text(partition_key=True) # Stored event ID (normally a UUID1) v = columns.TimeUUID(clustering_order='DESC', primary_key=True) # Stored event topic (path to the event object class) t = columns.Text(required=True) # Stored event attributes (the entity object __dict__) a = columns.Text(required=True)
class TimeuuidSequencedRecord(Model): """Stores timeuuid-sequenced items in Cassandra.""" __table_name__ = 'timeuuid_sequenced_items' _if_not_exists = True # Sequence UUID (e.g. an entity or aggregate ID). sequence_id = columns.UUID(partition_key=True) # Position (in time) of item in sequence. position = columns.TimeUUID(clustering_order='DESC', primary_key=True) # Topic of the item (e.g. path to domain event class). topic = columns.Text(required=True) # State of the item (serialized dict, possibly encrypted). state = columns.Text(required=True)