[rhmessaging-commits] rhmessaging commits: r3772 - mgmt/trunk/mint/python/mint.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Fri Jan 8 13:53:58 EST 2010


Author: justi9
Date: 2010-01-08 13:53:58 -0500 (Fri, 08 Jan 2010)
New Revision: 3772

Added:
   mgmt/trunk/mint/python/mint/schemalocal.py
Log:
Forgot to commit this new file with change 3771

Added: mgmt/trunk/mint/python/mint/schemalocal.py
===================================================================
--- mgmt/trunk/mint/python/mint/schemalocal.py	                        (rev 0)
+++ mgmt/trunk/mint/python/mint/schemalocal.py	2010-01-08 18:53:58 UTC (rev 3772)
@@ -0,0 +1,75 @@
+from sqlobject import *
+
+from mint.util import *
+
+class Subject(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  name = StringCol(unique=True, notNone=True)
+  password = StringCol()
+  lastChallenged = TimestampCol(default=None)
+  lastLoggedIn = TimestampCol(default=None)
+  lastLoggedOut = TimestampCol(default=None)
+  roles = SQLRelatedJoin("Role", intermediateTable="subject_role_mapping",
+                         createRelatedTable=False)
+
+  def getByName(cls, name):
+    try:
+      return Subject.selectBy(name=name)[0]
+    except IndexError:
+      pass
+
+  getByName = classmethod(getByName)
+
+class Role(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  name = StringCol(unique=True, notNone=True)
+  subjects = SQLRelatedJoin("Subject",
+                            intermediateTable="subject_role_mapping",
+                            createRelatedTable=False)
+
+  def getByName(cls, name):
+    try:
+      return Role.selectBy(name=name)[0]
+    except IndexError:
+      pass
+
+  getByName = classmethod(getByName)
+
+class SubjectRoleMapping(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  subject = ForeignKey("Subject", notNull=True, cascade=True)
+  role = ForeignKey("Role", notNull=True, cascade=True)
+  unique = DatabaseIndex(subject, role, unique=True)
+
+class ObjectNotFound(Exception):
+  pass
+
+class MintInfo(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  version = StringCol(default="0.1", notNone=True)
+
+class BrokerGroup(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  name = StringCol(unique=True, notNone=True)
+  brokers = SQLRelatedJoin("Broker",
+                           intermediateTable="broker_group_mapping",
+                           createRelatedTable=False)
+
+class BrokerGroupMapping(SQLObject):
+  class sqlmeta:
+    lazyUpdate = True
+
+  broker = ForeignKey("Broker", notNull=True, cascade=True)
+  brokerGroup = ForeignKey("BrokerGroup", notNull=True, cascade=True)
+  unique = DatabaseIndex(broker, brokerGroup, unique=True)
+



More information about the rhmessaging-commits mailing list