Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar_network/node
diff options
context:
space:
mode:
Diffstat (limited to 'sugar_network/node')
-rw-r--r--sugar_network/node/__init__.py2
-rw-r--r--sugar_network/node/master.py6
-rw-r--r--sugar_network/node/slave.py9
3 files changed, 9 insertions, 8 deletions
diff --git a/sugar_network/node/__init__.py b/sugar_network/node/__init__.py
index 14d675c..66bd37e 100644
--- a/sugar_network/node/__init__.py
+++ b/sugar_network/node/__init__.py
@@ -46,5 +46,5 @@ mode = Option(
default='slave')
master_api = Option(
- 'master API url either to connect to (for slave or proxy nodes), or,'
+ 'master API url either to connect to (for slave or proxy nodes), or, '
'to provide from (for master nodes)')
diff --git a/sugar_network/node/master.py b/sugar_network/node/master.py
index c94d047..d51d85b 100644
--- a/sugar_network/node/master.py
+++ b/sugar_network/node/master.py
@@ -19,7 +19,7 @@ from urlparse import urlsplit
from sugar_network import toolkit
from sugar_network.model.post import Post
from sugar_network.model.report import Report
-from sugar_network.node import obs, master_api, model
+from sugar_network.node import obs, model
from sugar_network.node.routes import NodeRoutes
from sugar_network.toolkit.router import route, ACL
from sugar_network.toolkit.coroutine import this
@@ -33,8 +33,8 @@ _logger = logging.getLogger('node.master')
class MasterRoutes(NodeRoutes):
- def __init__(self, **kwargs):
- NodeRoutes.__init__(self, urlsplit(master_api.value).netloc, **kwargs)
+ def __init__(self, master_api, **kwargs):
+ NodeRoutes.__init__(self, urlsplit(master_api).netloc, **kwargs)
self._pulls = pylru.lrucache(1024)
@route('POST', cmd='sync', arguments={'accept_length': int})
diff --git a/sugar_network/node/slave.py b/sugar_network/node/slave.py
index 176defd..babf1f0 100644
--- a/sugar_network/node/slave.py
+++ b/sugar_network/node/slave.py
@@ -25,7 +25,7 @@ from sugar_network import toolkit
from sugar_network.model.context import Context
from sugar_network.model.post import Post
from sugar_network.model.report import Report
-from sugar_network.node import master_api, model
+from sugar_network.node import model
from sugar_network.node.routes import NodeRoutes
from sugar_network.toolkit.router import route, ACL
from sugar_network.toolkit.coroutine import this
@@ -39,7 +39,7 @@ _logger = logging.getLogger('node.slave')
class SlaveRoutes(NodeRoutes):
- def __init__(self, volume, **kwargs):
+ def __init__(self, master_api, volume, **kwargs):
guid_path = join(volume.root, 'etc', 'node')
if exists(guid_path):
with file(guid_path) as f:
@@ -54,12 +54,13 @@ class SlaveRoutes(NodeRoutes):
vardir = join(volume.root, 'var')
self._push_r = toolkit.Bin(join(vardir, 'push.ranges'), [[1, None]])
self._pull_r = toolkit.Bin(join(vardir, 'pull.ranges'), [[1, None]])
- self._master_guid = urlsplit(master_api.value).netloc
+ self._master_guid = urlsplit(master_api).netloc
+ self._master_api = master_api
@route('POST', cmd='online_sync', acl=ACL.LOCAL,
arguments={'no_pull': bool})
def online_sync(self, no_pull=False):
- conn = http.Connection(master_api.value)
+ conn = http.Connection(self._master_api)
response = conn.request('POST',
data=packets.encode(self._export(not no_pull), header={
'from': self.guid,