##// END OF EJS Templates
added status column to pull request + some small refactoring of models
marcink -
r2588:32dd6896 beta
parent child Browse files
Show More
@@ -61,37 +61,6 b' log = logging.getLogger(__name__)'
61 _hash_key = lambda k: hashlib.md5(safe_str(k)).hexdigest()
61 _hash_key = lambda k: hashlib.md5(safe_str(k)).hexdigest()
62
62
63
63
64 class ModelSerializer(json.JSONEncoder):
65 """
66 Simple Serializer for JSON,
67
68 usage::
69
70 to make object customized for serialization implement a __json__
71 method that will return a dict for serialization into json
72
73 example::
74
75 class Task(object):
76
77 def __init__(self, name, value):
78 self.name = name
79 self.value = value
80
81 def __json__(self):
82 return dict(name=self.name,
83 value=self.value)
84
85 """
86
87 def default(self, obj):
88
89 if hasattr(obj, '__json__'):
90 return obj.__json__()
91 else:
92 return json.JSONEncoder.default(self, obj)
93
94
95 class BaseModel(object):
64 class BaseModel(object):
96 """
65 """
97 Base Model for all classess
66 Base Model for all classess
@@ -112,8 +81,13 b' class BaseModel(object):'
112 d[k] = getattr(self, k)
81 d[k] = getattr(self, k)
113
82
114 # also use __json__() if present to get additional fields
83 # also use __json__() if present to get additional fields
115 for k, val in getattr(self, '__json__', lambda: {})().iteritems():
84 _json_attr = getattr(self, '__json__', None)
116 d[k] = val
85 if _json_attr:
86 # update with attributes from __json__
87 if callable(_json_attr):
88 _json_attr = _json_attr()
89 for k, val in _json_attr.iteritems():
90 d[k] = val
117 return d
91 return d
118
92
119 def get_appstruct(self):
93 def get_appstruct(self):
@@ -173,8 +147,8 b' class RhodeCodeSetting(Base, BaseModel):'
173 'mysql_charset': 'utf8'}
147 'mysql_charset': 'utf8'}
174 )
148 )
175 app_settings_id = Column("app_settings_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
149 app_settings_id = Column("app_settings_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
176 app_settings_name = Column("app_settings_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
150 app_settings_name = Column("app_settings_name", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
177 _app_settings_value = Column("app_settings_value", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
151 _app_settings_value = Column("app_settings_value", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
178
152
179 def __init__(self, k='', v=''):
153 def __init__(self, k='', v=''):
180 self.app_settings_name = k
154 self.app_settings_name = k
@@ -254,9 +228,9 b' class RhodeCodeUi(Base, BaseModel):'
254 HOOK_PULL = 'preoutgoing.pull_logger'
228 HOOK_PULL = 'preoutgoing.pull_logger'
255
229
256 ui_id = Column("ui_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
230 ui_id = Column("ui_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
257 ui_section = Column("ui_section", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
231 ui_section = Column("ui_section", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
258 ui_key = Column("ui_key", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
232 ui_key = Column("ui_key", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
259 ui_value = Column("ui_value", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
233 ui_value = Column("ui_value", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
260 ui_active = Column("ui_active", Boolean(), nullable=True, unique=None, default=True)
234 ui_active = Column("ui_active", Boolean(), nullable=True, unique=None, default=True)
261
235
262 @classmethod
236 @classmethod
@@ -303,16 +277,16 b' class User(Base, BaseModel):'
303 'mysql_charset': 'utf8'}
277 'mysql_charset': 'utf8'}
304 )
278 )
305 user_id = Column("user_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
279 user_id = Column("user_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
306 username = Column("username", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
280 username = Column("username", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
307 password = Column("password", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
281 password = Column("password", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
308 active = Column("active", Boolean(), nullable=True, unique=None, default=True)
282 active = Column("active", Boolean(), nullable=True, unique=None, default=True)
309 admin = Column("admin", Boolean(), nullable=True, unique=None, default=False)
283 admin = Column("admin", Boolean(), nullable=True, unique=None, default=False)
310 name = Column("firstname", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
284 name = Column("firstname", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
311 lastname = Column("lastname", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
285 lastname = Column("lastname", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
312 _email = Column("email", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
286 _email = Column("email", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
313 last_login = Column("last_login", DateTime(timezone=False), nullable=True, unique=None, default=None)
287 last_login = Column("last_login", DateTime(timezone=False), nullable=True, unique=None, default=None)
314 ldap_dn = Column("ldap_dn", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
288 ldap_dn = Column("ldap_dn", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
315 api_key = Column("api_key", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
289 api_key = Column("api_key", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
316
290
317 user_log = relationship('UserLog', cascade='all')
291 user_log = relationship('UserLog', cascade='all')
318 user_perms = relationship('UserToPerm', primaryjoin="User.user_id==UserToPerm.user_id", cascade='all')
292 user_perms = relationship('UserToPerm', primaryjoin="User.user_id==UserToPerm.user_id", cascade='all')
@@ -470,7 +444,7 b' class UserEmailMap(Base, BaseModel):'
470
444
471 email_id = Column("email_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
445 email_id = Column("email_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
472 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=True, unique=None, default=None)
446 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=True, unique=None, default=None)
473 _email = Column("email", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=False, default=None)
447 _email = Column("email", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=False, default=None)
474
448
475 user = relationship('User', lazy='joined')
449 user = relationship('User', lazy='joined')
476
450
@@ -500,9 +474,9 b' class UserLog(Base, BaseModel):'
500 user_log_id = Column("user_log_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
474 user_log_id = Column("user_log_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
501 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=None, default=None)
475 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=None, default=None)
502 repository_id = Column("repository_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True)
476 repository_id = Column("repository_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True)
503 repository_name = Column("repository_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
477 repository_name = Column("repository_name", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
504 user_ip = Column("user_ip", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
478 user_ip = Column("user_ip", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
505 action = Column("action", UnicodeText(length=1200000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
479 action = Column("action", UnicodeText(1200000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
506 action_date = Column("action_date", DateTime(timezone=False), nullable=True, unique=None, default=None)
480 action_date = Column("action_date", DateTime(timezone=False), nullable=True, unique=None, default=None)
507
481
508 @property
482 @property
@@ -521,7 +495,7 b' class UsersGroup(Base, BaseModel):'
521 )
495 )
522
496
523 users_group_id = Column("users_group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
497 users_group_id = Column("users_group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
524 users_group_name = Column("users_group_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
498 users_group_name = Column("users_group_name", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
525 users_group_active = Column("users_group_active", Boolean(), nullable=True, unique=None, default=None)
499 users_group_active = Column("users_group_active", Boolean(), nullable=True, unique=None, default=None)
526
500
527 members = relationship('UsersGroupMember', cascade="all, delete, delete-orphan", lazy="joined")
501 members = relationship('UsersGroupMember', cascade="all, delete, delete-orphan", lazy="joined")
@@ -594,16 +568,16 b' class Repository(Base, BaseModel):'
594 )
568 )
595
569
596 repo_id = Column("repo_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
570 repo_id = Column("repo_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
597 repo_name = Column("repo_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
571 repo_name = Column("repo_name", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
598 clone_uri = Column("clone_uri", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=False, default=None)
572 clone_uri = Column("clone_uri", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=False, default=None)
599 repo_type = Column("repo_type", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None)
573 repo_type = Column("repo_type", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None)
600 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=False, default=None)
574 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=False, default=None)
601 private = Column("private", Boolean(), nullable=True, unique=None, default=None)
575 private = Column("private", Boolean(), nullable=True, unique=None, default=None)
602 enable_statistics = Column("statistics", Boolean(), nullable=True, unique=None, default=True)
576 enable_statistics = Column("statistics", Boolean(), nullable=True, unique=None, default=True)
603 enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True)
577 enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True)
604 description = Column("description", String(length=10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
578 description = Column("description", String(10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
605 created_on = Column('created_on', DateTime(timezone=False), nullable=True, unique=None, default=datetime.datetime.now)
579 created_on = Column('created_on', DateTime(timezone=False), nullable=True, unique=None, default=datetime.datetime.now)
606 landing_rev = Column("landing_revision", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None)
580 landing_rev = Column("landing_revision", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None)
607
581
608 fork_id = Column("fork_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True, unique=False, default=None)
582 fork_id = Column("fork_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True, unique=False, default=None)
609 group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=False, default=None)
583 group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=False, default=None)
@@ -941,9 +915,9 b' class RepoGroup(Base, BaseModel):'
941 __mapper_args__ = {'order_by': 'group_name'}
915 __mapper_args__ = {'order_by': 'group_name'}
942
916
943 group_id = Column("group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
917 group_id = Column("group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
944 group_name = Column("group_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
918 group_name = Column("group_name", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
945 group_parent_id = Column("group_parent_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=None, default=None)
919 group_parent_id = Column("group_parent_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=None, default=None)
946 group_description = Column("group_description", String(length=10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
920 group_description = Column("group_description", String(10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
947
921
948 repo_group_to_perm = relationship('UserRepoGroupToPerm', cascade='all', order_by='UserRepoGroupToPerm.group_to_perm_id')
922 repo_group_to_perm = relationship('UserRepoGroupToPerm', cascade='all', order_by='UserRepoGroupToPerm.group_to_perm_id')
949 users_group_to_perm = relationship('UsersGroupRepoGroupToPerm', cascade='all')
923 users_group_to_perm = relationship('UsersGroupRepoGroupToPerm', cascade='all')
@@ -1091,8 +1065,8 b' class Permission(Base, BaseModel):'
1091 ]
1065 ]
1092
1066
1093 permission_id = Column("permission_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
1067 permission_id = Column("permission_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
1094 permission_name = Column("permission_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1068 permission_name = Column("permission_name", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1095 permission_longname = Column("permission_longname", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1069 permission_longname = Column("permission_longname", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1096
1070
1097 def __unicode__(self):
1071 def __unicode__(self):
1098 return u"<%s('%s:%s')>" % (
1072 return u"<%s('%s:%s')>" % (
@@ -1297,8 +1271,8 b' class CacheInvalidation(Base, BaseModel)'
1297 'mysql_charset': 'utf8'},
1271 'mysql_charset': 'utf8'},
1298 )
1272 )
1299 cache_id = Column("cache_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
1273 cache_id = Column("cache_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
1300 cache_key = Column("cache_key", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1274 cache_key = Column("cache_key", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1301 cache_args = Column("cache_args", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1275 cache_args = Column("cache_args", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
1302 cache_active = Column("cache_active", Boolean(), nullable=True, unique=None, default=False)
1276 cache_active = Column("cache_active", Boolean(), nullable=True, unique=None, default=False)
1303
1277
1304 def __init__(self, cache_key, cache_args=''):
1278 def __init__(self, cache_key, cache_args=''):
@@ -1529,9 +1503,14 b' class PullRequest(Base, BaseModel):'
1529 'mysql_charset': 'utf8'},
1503 'mysql_charset': 'utf8'},
1530 )
1504 )
1531
1505
1506 STATUS_NEW = u'new'
1507 STATUS_OPEN = u'open'
1508 STATUS_CLOSED = u'closed'
1509
1532 pull_request_id = Column('pull_request_id', Integer(), nullable=False, primary_key=True)
1510 pull_request_id = Column('pull_request_id', Integer(), nullable=False, primary_key=True)
1533 title = Column('title', Unicode(256), nullable=True)
1511 title = Column('title', Unicode(256), nullable=True)
1534 description = Column('description', Unicode(10240), nullable=True)
1512 description = Column('description', UnicodeText(10240), nullable=True)
1513 status = Column('status', Unicode(256), nullable=False, default=STATUS_NEW)
1535 created_on = Column('created_on', DateTime(timezone=False), nullable=False, default=datetime.datetime.now)
1514 created_on = Column('created_on', DateTime(timezone=False), nullable=False, default=datetime.datetime.now)
1536 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=None)
1515 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=None)
1537 _revisions = Column('revisions', UnicodeText(20500)) # 500 revisions max
1516 _revisions = Column('revisions', UnicodeText(20500)) # 500 revisions max
@@ -1595,7 +1574,7 b' class Notification(Base, BaseModel):'
1595
1574
1596 notification_id = Column('notification_id', Integer(), nullable=False, primary_key=True)
1575 notification_id = Column('notification_id', Integer(), nullable=False, primary_key=True)
1597 subject = Column('subject', Unicode(512), nullable=True)
1576 subject = Column('subject', Unicode(512), nullable=True)
1598 body = Column('body', Unicode(50000), nullable=True)
1577 body = Column('body', UnicodeText(50000), nullable=True)
1599 created_by = Column("created_by", Integer(), ForeignKey('users.user_id'), nullable=True)
1578 created_by = Column("created_by", Integer(), ForeignKey('users.user_id'), nullable=True)
1600 created_on = Column('created_on', DateTime(timezone=False), nullable=False, default=datetime.datetime.now)
1579 created_on = Column('created_on', DateTime(timezone=False), nullable=False, default=datetime.datetime.now)
1601 type_ = Column('type', Unicode(256))
1580 type_ = Column('type', Unicode(256))
General Comments 0
You need to be logged in to leave comments. Login now