本文整理汇总了Python中twistar.registry.Registry.register方法的典型用法代码示例。如果您正苦于以下问题:Python Registry.register方法的具体用法?Python Registry.register怎么用?Python Registry.register使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类twistar.registry.Registry
的用法示例。
在下文中一共展示了Registry.register方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: setup
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def setup(cls, database):
Log.info("Initializing database")
# create the database connection pool
# sqlite requires that foreign key support be turned on with every connection
# to ensure that we have this turned on we use only one connection
Registry.DBPOOL = adbapi.ConnectionPool('sqlite3', database=database, check_same_thread=False, cp_max=1)
# register our classes with the registry
Registry.register(Record, Measurement)
示例2: setUp
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def setUp(self, config_basename="test.conf"):
configfile = os.path.join(
os.path.dirname(inspect.getsourcefile(TestBase)),
config_basename
)
config.read_config(configfile)
Registry.DBPOOL = adbapi.ConnectionPool(config.dbtype, **config.dbparams)
Registry.register(models.Cracker, models.Report, models.Legacy)
yield database.clean_database(quiet=True)
main.configure_logging()
示例3: register_composite
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
conn = psycopg2.connect(user=user, password=password, database=database)
cur = conn.cursor()
register_composite('label', cur, globally=True, factory=LabelComposite)
register_composite('security_attribute', cur, globally=True, factory=SecuritAttributeComposite)
cur.execute("SELECT oid FROM pg_type WHERE typname = 'timestamptz';")
timestamptz_oid = cur.fetchone()[0]
DT = psycopg2.extensions.new_type((timestamptz_oid,), "timestamptz", castDatetime)
psycopg2.extensions.register_type(DT)
conn.close()
Registry.DBPOOL = adbapi.ConnectionPool('psycopg2', user=user, password=password, database=database)
# ORM Objects
class ServiceConnection(DBObject):
HASMANY = ['SubConnections']
class SubConnection(DBObject):
BELONGSTO = ['ServiceConnection']
Registry.register(ServiceConnection, SubConnection)
示例4: register_classes
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def register_classes(*args):
Registry.register(*args)
示例5: FakeObject
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
HABTM = [dict(name='blogposts', join_table='posts_categories')]
class FakeObject(DBObject):
pass
class Coltest(DBObject):
pass
class Transaction(DBObject):
pass
class Boy(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Girl(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Nickname(DBObject):
BELONGSTO = [{'name': 'nicknameable', 'polymorphic': True}]
Registry.register(Picture, User, Comment, Avatar, FakeObject, FavoriteColor)
Registry.register(Boy, Girl, Nickname)
Registry.register(Blogpost, Category)
示例6: __eq__
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def __eq__(self, other):
"""
Determine if this object is the same as another (only taking
the type of the other class and it's C{id} into account).
@param other: The other object to compare this one to.
@return: A boolean.
"""
eqclass = self.__class__.__name__ == other.__class__.__name__
eqid = hasattr(other, 'id') and self.id == other.id
return eqclass and eqid
def __neq__(self, other):
"""
Determine if this object is not the same as another (only taking
the type of the other class and it's C{id} into account).
@param other: The other object to compare this one to.
@return: A boolean.
"""
return not self == other
__repr__ = __str__
Registry.register(DBObject)
示例7: Picture
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
HASONE = ['avatar']
HABTM = ['favorite_colors']
class Picture(DBObject):
BELONGSTO = ['user']
class Avatar(DBObject):
pass
class FavoriteColor(DBObject):
HABTM = ['users']
class FakeObject(DBObject):
pass
class Coltest(DBObject):
pass
class Boy(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Girl(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Nickname(DBObject):
BELONGSTO = [{'name': 'nicknameable', 'polymorphic': True}]
Registry.register(Picture, User, Avatar, FakeObject, FavoriteColor)
Registry.register(Boy, Girl, Nickname)
示例8: print
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
configfile = args.config
try:
config.read_config(args.config)
except ConfigParser.NoSectionError, e:
print("Error in reading the configuration file from \"{}\": {}.".format(args.config, e))
print("Please review the configuration file. Look at the supplied denyhosts-server.conf.example for more information.")
sys.exit()
configure_logging()
peering.load_keys()
Registry.DBPOOL = adbapi.ConnectionPool(config.dbtype, **config.dbparams)
Registry.register(models.Cracker, models.Report, models.Legacy)
single_shot = False
if not args.force and (args.recreate_database
or args.evolve_database
or args.purge_legacy_addresses
or args.purge_reported_addresses
or args.recreate_database
or args.bootstrap_from_peer
or args.purge_ip is not None):
print("WARNING: do not run this method when denyhosts-server is running.")
reply = raw_input("Are you sure you want to continue (Y/N): ")
if not reply.upper().startswith('Y'):
sys.exit()
示例9: afterInit
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def afterInit(self):
"""
depickle our config
"""
if hasattr(self, 'config'):
self.config = cPickle.loads(self.config)
def beforeSave(self):
self.config = cPickle.dumps(self.config)
def setConfig(self, config, subtype):
self.config = {}
for field in subtype.fields.keys():
if field in subtype.requiredFields and config.get(field, "") == "":
self.errors.add(field, "cannot be blank")
self.config[field] = config.get(field, "")
class Publisher(DBObject):
BELONGSTO = ['user', 'node']
class Message(DBObject):
BELONGSTO = ['node']
Message.validatesPresenceOf('body')
Registry.register(User, Node, Address, Subscription, Publisher, Message)
示例10: Nickname
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Nickname(DBObject):
BELONGSTO = [{'name': 'nicknameable', 'polymorphic': True}]
class Pen(DBObject):
pass
class Table(DBObject):
HABTM = ['pens']
HASMANY = ['rubbers']
class Rubber(DBObject):
pass
class Role(DBObject):
BELONGSTO = ['serviceclass']
class Serviceclass(DBObject):
HASMANY = ['roles']
BELONGSTO = ['superclass']
class Superclass(DBObject):
HASONE = ['serviceclass']
Registry.register(Picture, User, Comment, Avatar, FakeObject, FavoriteColor)
Registry.register(Boy, Girl, Nickname)
Registry.register(Blogpost, Category)
Registry.register(Pen, Table, Rubber)
Registry.register(Role, Serviceclass, Superclass)
示例11: FakeObject
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
HABTM = ['users']
class FakeObject(DBObject):
pass
class Coltest(DBObject):
pass
class Boy(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Girl(DBObject):
HASMANY = [{'name': 'nicknames', 'as': 'nicknameable'}]
class Nickname(DBObject):
BELONGSTO = [{'name': 'nicknameable', 'polymorphic': True}]
class Pen(DBObject):
pass
class Table(DBObject):
HABTM = ['pens']
HASMANY = ['rubbers']
class Rubber(DBObject):
pass
Registry.register(Picture, User, Comment, Avatar, FakeObject, FavoriteColor)
Registry.register(Boy, Girl, Nickname)
Registry.register(Pen, Table, Rubber)
示例12: run_main
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def run_main():
global configfile
global maintenance_job, legacy_sync_job
global main_xmlrpc_handler
parser = argparse.ArgumentParser(description="DenyHosts sync server")
parser.add_argument("-c", "--config", default="/etc/dh_syncserver.conf", help="Configuration file")
parser.add_argument("--recreate-database", action="store_true", help="Wipe and recreate the database")
parser.add_argument(
"--evolve-database", action="store_true", help="Evolve the database to the latest schema version"
)
parser.add_argument(
"--purge-legacy-addresses",
action="store_true",
help="Purge all hosts downloaded from the legacy server. DO NOT USE WHEN DH_SYNCSERVER IS RUNNING!",
)
parser.add_argument(
"--purge-reported-addresses",
action="store_true",
help="Purge all hosts that have been reported by clients. DO NOT USE WHEN DH_SYNCSERVER IS RUNNING!",
)
parser.add_argument(
"--purge-ip",
action="store",
help="Purge ip address from both legacy and reported host lists. DO NOT USE WHEN DH_SYNCSERVER IS RUNNING!",
)
parser.add_argument(
"-f", "--force", action="store_true", help="Do not ask for confirmation, execute action immediately"
)
args = parser.parse_args()
configfile = args.config
config.read_config(args.config)
configure_logging()
Registry.DBPOOL = adbapi.ConnectionPool(config.dbtype, **config.dbparams)
Registry.register(models.Cracker, models.Report, models.Legacy)
single_shot = False
if not args.force and (
args.recreate_database
or args.evolve_database
or args.purge_legacy_addresses
or args.purge_reported_addresses
or args.recreate_database
or args.purge_ip is not None
):
print("WARNING: do not run this method when dh_syncserver is running.")
reply = raw_input("Are you sure you want to continue (Y/N): ")
if not reply.upper().startswith("Y"):
sys.exit()
if args.recreate_database:
single_shot = True
database.clean_database().addCallbacks(stop_reactor, stop_reactor)
if args.evolve_database:
single_shot = True
database.evolve_database().addCallbacks(stop_reactor, stop_reactor)
if args.purge_legacy_addresses:
single_shot = True
controllers.purge_legacy_addresses().addCallbacks(stop_reactor, stop_reactor)
if args.purge_reported_addresses:
single_shot = True
controllers.purge_reported_addresses().addCallbacks(stop_reactor, stop_reactor)
if args.purge_ip is not None:
single_shot = True
controllers.purge_ip(args.purge_ip).addCallbacks(stop_reactor, stop_reactor)
if not single_shot:
signal.signal(signal.SIGHUP, sighup_handler)
reactor.addSystemEventTrigger("after", "startup", database.check_database_version)
main_xmlrpc_handler = views.Server()
if config.enable_debug_methods:
d = debug_views.DebugServer(main_xmlrpc_handler)
main_xmlrpc_handler.putSubHandler("debug", d)
start_listening(config.listen_port)
# Set up maintenance and legacy sync jobs
schedule_jobs()
# Start reactor
logging.info("Starting dh_syncserver version {}".format(__init__.version))
reactor.run()
示例13: __getattr__
# 需要导入模块: from twistar.registry import Registry [as 别名]
# 或者: from twistar.registry.Registry import register [as 别名]
def __getattr__(self, attr_name):
if hasattr(self._nodes, attr_name):
return getattr(self._nodes, attr_name)
elif hasattr(self._tasks, attr_name):
return getattr(self._tasks, attr_name)
else:
raise AttributeError(attr_name)
def update(self,name,description,status):
self.status=status
self.description=description
log.msg("Environment ",name," updated succesfully",system="Environement manager",logLevel=logging.INFO)
return self
Registry.register(Environment, Node)
Registry.register(Environment, Task)
Registry.register(Task, PrintAction)
Registry.register(Task, Action)
#Registry.register(Task, Condition)
Registry.register(Node, Driver)
class EnvironmentManager(object):
"""
Class acting as a central access point for all the functionality of environments
"""
envPath=None
environments={}
idCounter=1
def __init__(self,envPath):