--- a/fixbot/api.py Thu Feb 04 19:38:54 2010 +0200
+++ b/fixbot/api.py Thu Feb 04 19:39:37 2010 +0200
@@ -4,7 +4,7 @@
from datetime import datetime
import sys
-import buffer
+from fixbot import buffer, config
class ModuleInfo (object) :
"""
@@ -170,9 +170,9 @@
class Module (ModuleInfo, protocol.ClientFactory) :
protocol = ClientProtocol
- def __init__ (self, secret) :
+ def __init__ (self, config) :
self.connection = None
- self.secret = secret
+ self.secret = config['api-secret']
def connected (self, connection) :
log.msg("Connected!")
@@ -203,7 +203,7 @@
self.nexus = nexus
self.secret = secret
-class ClientOptions (usage.Options) :
+class ClientOptions (config.ConfigOptions) :
optParameters = [
( "api-server", "s", "127.0.0.1", "address of API server to connect to" ),
( "api-port", "P", 34888, "port of API server to connect to", int ),
@@ -214,14 +214,15 @@
]
-def makeService (client_module_factory, config) :
+def makeService (module_class, config) :
s = service.MultiService()
+
+ # build factory
+ factory = module_class(config)
# the API client
- module_factory = client_module_factory(config['api-secret'])
-
log.msg("Connecting to API server on [%s:%d]" % (config['api-server'], config['api-port']))
- api_client = internet.TCPClient(config['api-server'], config['api-port'], module_factory)
+ api_client = internet.TCPClient(config['api-server'], config['api-port'], factory)
api_client.setServiceParent(s)