Ejemplo n.º 1
0
class shelve(UserType):
    #id=UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer(index=True)
    shelve = Text(required=True, index=True)
    votes = Integer(index=True)
    count = Integer(index=True)
    best = Boolean(default=False)
Ejemplo n.º 2
0
class AttachmentModel(Model):
    # duplicate attachments from message table to this table for fast querying
    __table_name__ = "attachments"

    group_id = UUID(
        required=True,
        primary_key=True,
        partition_key=True,
    )
    created_at = DateTime(
        required=True,
        primary_key=True,
        clustering_order="DESC",
    )
    user_id = Integer(
        required=True,
        primary_key=True,
    )
    message_id = UUID(
        required=True,
        default=uuid.uuid4
    )
    file_id = Text(
        required=True
    )
    message_payload = Text(
        required=False
    )
    context = Text(
        required=False
    )
    message_type = Integer(
        required=True
    )
    updated_at = DateTime()
Ejemplo n.º 3
0
class Game(Model):
    home_team = Text(primary_key=True, required=True)
    away_team = Text(primary_key=True, required=True)
    date = Date(primary_key=True, clustering_order="ASC")
    home_win = Boolean(required=True)
    playoffs = Boolean(required=True)
    season = Text(required=True)

    home_players = Set(value_type=Integer)
    away_players = Set(value_type=Integer)
    # cassandra.cqlengine.columns.Set

    # home_rest = Integer()	# number of games past X days
    # away_rest = Integer()

    # home_success = Integer()	# recent record past X games
    # away_success = Integer()

    home_wins = Integer()
    home_losses = Integer()

    away_wins = Integer()
    away_losses = Integer()

    # rest for each team
    # recent success for each team
    # records for each team

    @staticmethod
    def get_model_string():
        return 'game'

    def validate(self):
        super(Game, self).validate()
Ejemplo n.º 4
0
class review(UserType):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    actor = UserDefinedType(user)
    book = UserDefinedType(book)
    gid = Integer(required=True, index=True)
    rating = Integer(required=True, index=True)
    text = Text()
    comments_count = Integer()
    textblob = UserDefinedType(textblob)
Ejemplo n.º 5
0
class Reviews(Model):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    actor = UserDefinedType(user, default=user())
    book = UserDefinedType(book, default=book(author=author()))
    gid = Integer(required=True, index=True)
    rating = Integer(required=True, index=True)
    text = Text()
    comments_count = Integer()
    textblob = UserDefinedType(textblob, default=textblob(instantiated=False))
Ejemplo n.º 6
0
class user(UserType):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer(required=True, index=True)
    name = Text(required=True, index=True)
    friends_count = Integer()
    reviews_count = Integer()
    age = Integer(index=True)
    gender = Text(index=True)
    location = Text(index=True)
    small_user = Boolean(default=False, index=True)
    private = Boolean(default=False, index=True)
Ejemplo n.º 7
0
class book(UserType):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer(required=True, index=True)
    title = Text(required=True, index=True)
    isbn = Text(index=True)
    isbn13 = Text()
    publication_date = DateTime(index=True)
    description = Text()
    average_rating = Double(required=True, index=True)
    ratings_count = Integer(required=True)
    reviews_count = Integer()
    small_book = Boolean(
    )  # no shelves, review_count, description, smilar_book
    author = UserDefinedType(author, default=author())
    list_shelves = List(UserDefinedType(shelve))
    error_retrieving_shelves = Boolean(default=False)
Ejemplo n.º 8
0
def _str_to_column(type_str, key_type=None, value_type=None, column_def={}):
    '''
    Converts name of Cassandra types to driver class wrapper for
    that type.
    '''
    type_str = type_str.lower()

    if type_str == 'integer':
        return Integer(**column_def)
    elif type_str == 'text':
        return Text(**column_def)
    elif type_str == 'ascii':
        return Ascii(**column_def)
    elif type_str == 'bigint':
        return BigInt(**column_def)
    elif type_str == 'blob':
        return Blob(**column_def)
    elif type_str == 'bytes':
        return Bytes(**column_def)
    elif type_str == 'boolean':
        return Boolean(**column_def)
    elif type_str == 'counter':
        return Counter(**column_def)
    elif type_str == 'date':
        return Date(**column_def)
    elif type_str == 'datetime':
        return DateTime(**column_def)
    elif type_str == 'decimal':
        return Decimal(**column_def)
    elif type_str == 'double':
        return Double(**column_def)
    elif type_str == 'float':
        return Float(**column_def)
    elif type_str == 'list':
        _assert_type_exception(value_type, "list type requires value_type")
        return List(value_type=value_type, **column_def)
    elif type_str == 'map':
        _assert_type_exception(key_type, "list type requires key_type")
        _assert_type_exception(value_type, "list type requires value_type")
        return Map(key_type=key_type, value_type=value_type, **column_def)
    elif type_str == 'set':
        _assert_type_exception(value_type, "set type requires value_type")
        return Set(value_type=value_type, **column_def)
    elif type_str == 'smallint':
        return SmallInt(**column_def)
    elif type_str == 'time':
        return Time(**column_def)
    elif type_str == 'timeuuid':
        return TimeUUID(**column_def)
    elif type_str == 'timestamp':
        return TimeUUID(**column_def)
    elif type_str == 'tinyint':
        return TinyInt(**column_def)
    elif type_str == 'uuid':
        return UUID(**column_def)
    elif type_str == 'varint':
        return VarInt(**column_def)
    else:
        raise Exception('Type {} is not defined.'.format(type_str))
Ejemplo n.º 9
0
class Round(AioModel):
    __table_name__ = "round"
    __keyspace__ = "presidents"
    round_id = UUID(primary_key=True, partition_key=True, required=True)
    game_id = UUID(required=True)
    start_timestamp = DateTime(required=True)
    end_timestamp = DateTime(required=False)
    round_number = Integer(required=True)
Ejemplo n.º 10
0
class User(UserType):
    # We use Date and Time to ensure to_python
    # is called for these columns
    age = Integer()
    date_param = Date()
    map_param = Map(Integer, Time)
    list_param = List(Date)
    set_param = Set(Date)
    tuple_param = Tuple(Date, Decimal, Boolean, VarInt, Double, UUID)
Ejemplo n.º 11
0
class Books(Model):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer(primary_key=True, required=True, index=True)
    title = Text(required=True, index=True)
    isbn = Text()
    isbn13 = Text()
    publication_date = DateTime(index=True)
    description = Text()
    average_rating = Double(required=True, index=True)
    ratings_count = Integer(required=True)
    reviews_count = Integer()
    small_book = Boolean(
        default=True,
        index=True)  # no shelves, review_count, description, smilar_book
    author = UserDefinedType(author, default=author())
    #Specific to model
    reviews_retrieved = Boolean(default=False, required=False, index=True)
    shelves_retrieved = Boolean(default=False, required=False, index=True)
    #Lists
    list_shelves = List(UserDefinedType(shelve), required=False)
    list_reviews = List(UserDefinedType(review), required=False)
Ejemplo n.º 12
0
class Recommendation(Model):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    user_gid = Integer(required=True, index=True)
    username = Text()
    user_image = Text()
    item_recommended = List(Integer)
    books_details_recommended = List(UserDefinedType(book))
    precision = Double(default=0.0, index=True)
    recall = Double(default=0.0, index=True)
    book_details_retrieved = Boolean(default=False, index=True)
    most_common_shelves = List(UserDefinedType(shelve), required=False)
    common_shelves_retrieved = Boolean(default=False, index=True)
Ejemplo n.º 13
0
class MessageModel(Model):
    __table_name__ = "messages"

    group_id = UUID(
        required=True,
        primary_key=True,
        partition_key=True,
    )
    created_at = DateTime(
        required=True,
        primary_key=True,
        clustering_order="DESC",
    )
    user_id = Integer(
        required=True,
        primary_key=True,
    )
    message_id = UUID(
        required=True,
        default=uuid.uuid4
    )

    file_id = Text(
        required=False
    )
    message_payload = Text(
        required=False
    )

    # user for quotes, reactions, etc.
    context = Text(
        required=False
    )

    message_type = Integer(
        required=True
    )
    updated_at = DateTime()
    removed_at = DateTime()
Ejemplo n.º 14
0
class author(UserType):
    id = UUID(default=uuid.uuid4())
    name = Text(required=True, index=True)
    gid = Integer(required=True, index=True)
    age = Integer()
    gender = Text()
    location = Text()
    interests = Text()
    born_at = DateTime()
    diet_at = DateTime()
    friends_count = Integer()
    reviews_count = Integer()
    fans_count = Integer()
    author_followers_count = Integer()
    works_count = Integer()
    average_rating = Double()
    ratings_count = Integer()
    text_reviews_count = Integer()
    small_author = Text()
Ejemplo n.º 15
0
class Users(Model):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer(required=True, index=True)
    name = Text(required=True, index=True)
    friends_count = Integer()
    reviews_count = Integer(index=True)
    age = Integer(index=True)
    gender = Text(index=True)
    location = Text(index=True)
    small_user = Boolean(default=False, index=True)
    private = Boolean(default=False, index=True)
    #specific to model
    friends_retrieved = Boolean(default=False, index=True)
    reviews_retrieved = Boolean(default=False, index=True)
    shelves_reviews_retrieved = Boolean(default=False, index=True)
    reviews_filtered = Boolean(default=False, index=True)
    test_set = Boolean(default=False, index=True)

    #Lists
    list_reviews = List(UserDefinedType(review))
    list_friends = List(UserDefinedType(user))
    short_list_reviews = List(UserDefinedType(review))
    most_common_shelves = List(UserDefinedType(shelve), required=False)
Ejemplo n.º 16
0
class Authors(Model):
    id = UUID(primary_key=True, default=uuid.uuid4(), partition_key=True)
    name = Text(required=True, index=True)
    gid = Integer(required=True, index=True)
    age = Integer(index=True)
    gender = Text(index=True)
    location = Text(index=True)
    interests = Text()
    born_at = DateTime(index=True)
    diet_at = DateTime(index=True)
    friends_count = Integer()
    reviews_count = Integer()
    fans_count = Integer()
    author_followers_count = Integer()
    works_count = Integer()
    average_rating = Double()
    ratings_count = Integer()
    text_reviews_count = Integer()
    #Lists
    list_books = List(UserDefinedType(book))
Ejemplo n.º 17
0
    class BoolDefaultValueTest(Model):

        test_id = Integer(primary_key=True)
        stuff = Boolean(default=True)
Ejemplo n.º 18
0
    class DatetimeTest(Model):

        test_id = Integer(primary_key=True)
        created_at = DateTime()
Ejemplo n.º 19
0
    class IntegerTest(Model):

        test_id = UUID(primary_key=True, default=lambda: uuid4())
        value = Integer(default=0, required=True)
Ejemplo n.º 20
0
    class TimeUUIDTest(Model):

        test_id = Integer(primary_key=True)
        timeuuid = TimeUUID(default=uuid1())
Ejemplo n.º 21
0
    class UUIDTest(Model):

        test_id = Integer(primary_key=True)
        a_uuid = UUID(default=uuid4())
Ejemplo n.º 22
0
    class DecimalTest(Model):

        test_id = Integer(primary_key=True)
        dec_val = Decimal()
Ejemplo n.º 23
0
    class VarIntTest(Model):

        test_id = Integer(primary_key=True)
        bignum = VarInt(primary_key=True)
Ejemplo n.º 24
0
    class BoolValidationTest(Model):

        test_id = Integer(primary_key=True)
        bool_column = Boolean()
Ejemplo n.º 25
0
class Product(Model):
    # Elassandra internal
    es_query = EsQuery()

    # Identification
    code = Text(primary_key=True)
    url = Text()
    creator = Text()
    created_t = DateTime()
    last_modified_t = DateTime()
    product_name = Text()
    generic_name = Text()

    # Base information
    quantity = Text()
    packaging = List(Text)
    packaging_tags = List(Text)
    brands = List(Text)
    brands_tags = List(Text)
    categories = List(Text)
    categories_tags = List(Text)
    categories_fr = List(Text)
    origins = List(Text)
    origins_tags = List(Text)
    manufacturing_places = List(Text)
    manufacturing_places_tags = List(Text)
    labels = List(Text)
    labels_tags = List(Text)
    labels_fr = List(Text)
    emb_codes = List(Text)
    emb_codes_tags = List(Text)
    first_packaging_code_geo = Text()  # mapped to geopoint by elasticsearch
    cities = List(Text)
    cities_tags = List(Text)
    purchase_places = Text()
    stores = List(Text)
    countries = Text()
    countries_tags = List(Text)
    countries_fr = List(Text)
    ingredients_text = Text()  # mapped to text by elasticsearch
    allergens = List(Text)
    allergens_fr = List(Text)
    traces = List(Text)
    traces_tags = List(Text)
    traces_fr = List(Text)
    serving_size = Text()
    serving_quantity = Double()
    no_nutriments = Text()
    additives_n = Integer()
    additives = Text()  # Not indexed, could be analyzed as text
    additives_tags = List(Text)
    additives_fr = List(Text)
    ingredients_from_palm_oil_n = Integer()
    ingredients_from_palm_oil = Text()
    ingredients_from_palm_oil_tags = List(Text)
    ingredients_that_may_be_from_palm_oil_n = Integer()
    ingredients_that_may_be_from_palm_oil = Text()
    ingredients_that_may_be_from_palm_oil_tags = List(Text)
    nutrition_grade_uk = Text()
    nutrition_grade_fr = Text()
    pnns_groups_1 = Text()
    pnns_groups_2 = Text()
    states = List(Text)
    states_tags = List(Text)
    states_fr = List(Text)
    main_category = List(Text)
    main_category_fr = List(Text)

    # URLs
    image_url = Text()
    image_small_url = Text()
    image_ingredients_url = Text()
    image_ingredients_small_url = Text()
    image_nutrition_url = Text()
    image_nutrition_small_url = Text()

    # Composition
    energy_100g = Double()
    energy_from_fat_100g = Double(db_field="energy-from-fat_100g")
    fat_100g = Double()
    saturated_fat_100g = Double(db_field="saturated-fat_100g")
    butyric_acid_100g = Double(db_field="butyric-acid_100g")
    caproic_acid_100g = Double(db_field="caproic-acid_100g")
    caprylic_acid_100g = Double(db_field="caprylic-acid_100g")
    capric_acid_100g = Double(db_field="capric-acid_100g")
    lauric_acid_100g = Double(db_field="lauric-acid_100g")
    myristic_acid_100g = Double(db_field="myristic-acid_100g")
    palmitic_acid_100g = Double(db_field="palmitic-acid_100g")
    stearic_acid_100g = Double(db_field="stearic-acid_100g")
    arachidic_acid_100g = Double(db_field="arachidic-acid_100g")
    behenic_acid_100g = Double(db_field="behenic-acid_100g")
    lignoceric_acid_100g = Double(db_field="lignoceric-acid_100g")
    cerotic_acid_100g = Double(db_field="cerotic-acid_100g")
    montanic_acid_100g = Double(db_field="montanic-acid_100g")
    melissic_acid_100g = Double(db_field="melissic-acid_100g")
    monounsaturated_fat_100g = Double(db_field="monounsaturated-fat_100g")
    polyunsaturated_fat_100g = Double(db_field="polyunsaturated-fat_100g")
    omega_3_fat_100g = Double(db_field="omega-3-fat_100g")
    alpha_linolenic_acid_100g = Double(db_field="alpha-linolenic-acid_100g")
    eicosapentaenoic_acid_100g = Double(db_field="eicosapentaenoic-acid_100g")
    docosahexaenoic_acid_100g = Double(db_field="docosahexaenoic-acid_100g")
    omega_6_fat_100g = Double(db_field="omega-6-fat_100g")
    linoleic_acid_100g = Double(db_field="linoleic-acid_100g")
    arachidonic_acid_100g = Double(db_field="arachidonic-acid_100g")
    gamma_linolenic_acid_100g = Double(db_field="gamma-linolenic-acid_100g")
    dihomo_gamma_linolenic_acid_100g = Double(db_field="dihomo-gamma-linolenic-acid_100g")
    omega_9_fat_100g = Double(db_field="omega-9-fat_100g")
    oleic_acid_100g = Double(db_field="oleic-acid_100g")
    elaidic_acid_100g = Double(db_field="elaidic-acid_100g")
    gondoic_acid_100g = Double(db_field="gondoic-acid_100g")
    mead_acid_100g = Double(db_field="mead-acid_100g")
    erucic_acid_100g = Double(db_field="erucic-acid_100g")
    nervonic_acid_100g = Double(db_field="nervonic-acid_100g")
    trans_fat_100g = Double(db_field="trans-fat_100g")
    cholesterol_100g = Double()
    carbohydrates_100g = Double()
    sugars_100g = Double()
    sucrose_100g = Double()
    glucose_100g = Double()
    fructose_100g = Double()
    lactose_100g = Double()
    maltose_100g = Double()
    maltodextrins_100g = Double()
    starch_100g = Double()
    polyols_100g = Double()
    fiber_100g = Double()
    proteins_100g = Double()
    casein_100g = Double()
    serum_proteins_100g = Double(db_field="serum-proteins_100g")
    nucleotides_100g = Double()
    salt_100g = Double()
    sodium_100g = Double()
    alcohol_100g = Double()
    vitamin_a_100g = Double(db_field="vitamin-a_100g")
    beta_carotene_100g = Double(db_field="beta-carotene_100g")
    vitamin_d_100g = Double(db_field="vitamin-d_100g")
    vitamin_e_100g = Double(db_field="vitamin-e_100g")
    vitamin_k_100g = Double(db_field="vitamin-k_100g")
    vitamin_c_100g = Double(db_field="vitamin-c_100g")
    vitamin_b1_100g = Double(db_field="vitamin-b1_100g")
    vitamin_b2_100g = Double(db_field="vitamin-b2_100g")
    vitamin_pp_100g = Double(db_field="vitamin-pp_100g")
    vitamin_b6_100g = Double(db_field="vitamin-b6_100g")
    vitamin_b9_100g = Double(db_field="vitamin-b9_100g")
    folates_100g = Double()
    vitamin_b12_100g = Double(db_field="vitamin-b12_100g")
    biotin_100g = Double()
    pantothenic_acid_100g = Double(db_field="pantothenic-acid_100g")
    silica_100g = Double()
    bicarbonate_100g = Double()
    potassium_100g = Double()
    chloride_100g = Double()
    calcium_100g = Double()
    phosphorus_100g = Double()
    iron_100g = Double()
    magnesium_100g = Double()
    zinc_100g = Double()
    copper_100g = Double()
    manganese_100g = Double()
    fluoride_100g = Double()
    selenium_100g = Double()
    chromium_100g = Double()
    molybdenum_100g = Double()
    iodine_100g = Double()
    caffeine_100g = Double()
    taurine_100g = Double()
    ph_100g = Double()
    fruits_vegetables_nuts_100g = Double(db_field="fruits-vegetables-nuts_100g")
    fruits_vegetables_nuts_estimate_100g = Double(db_field="fruits-vegetables-nuts-estimate_100g")
    collagen_meat_protein_ratio_100g = Double(db_field="collagen-meat-protein-ratio_100g")
    cocoa_100g = Double()
    chlorophyl_100g = Double()
    carbon_footprint_100g = Double(db_field="carbon-footprint_100g")
    nutrition_score_fr_100g = Double(db_field="nutrition-score-fr_100g")
    nutrition_score_uk_100g = Double(db_field="nutrition-score-uk_100g")
    glycemic_index_100g = Double(db_field="glycemic-index_100g")
    water_hardness_100g = Double(db_field="water-hardness_100g")
    choline_100g = Double()
    phylloquinone_100g = Double()
    beta_glucan_100g = Double(db_field="beta-glucan_100g")
    inositol_100g = Double()
    carnitine_100g = Double()

    def to_dict(self):
        json_dict = dict(self)
        del json_dict['es_query']
        return json_dict
Ejemplo n.º 26
0
class Shelves(Model):
    id = UUID(primary_key=True, default=uuid.uuid4, partition_key=True)
    gid = Integer()
    shelve = Text(required=True, index=True)
    count = Integer()
    list_book = List(UserDefinedType(book))
Ejemplo n.º 27
0
class UserModel(Model):
    test_id = Integer(primary_key=True)
    class_param = UserDefinedType(User)
Ejemplo n.º 28
0
 class DataTypeTest(Model):
     test_id = Integer(primary_key=True)
     class_param = cls.db_klass()
Ejemplo n.º 29
0
class PlayerGameLog(Model):
    name = Text(primary_key=True, required=True)
    team = Text(required=True)
    date = Date(primary_key=True, clustering_order="ASC")
    home = Boolean(required=True)
    opp = Text(required=True)
    win = Boolean(required=True)
    season = Text(required=True)
    season_type = Text(required=True)
    minutes = Integer()
    points = Integer()
    fgm = Integer()
    fga = Integer()
    fgp = Float()
    tm = Integer()  # 3's made
    ta = Integer()  # 3's attempted
    tp = Float()  # 3 percentage
    ftm = Integer()
    fta = Integer()
    ftp = Float()
    oreb = Integer()
    dreb = Integer()
    reb = Integer()
    ast = Integer()
    stl = Integer()
    blk = Integer()
    tov = Integer()
    pf = Integer()
    pm = Integer()

    @staticmethod
    def get_model_string():
        return 'player_game_log'

    def validate(self):
        super(PlayerGameLog, self).validate()