Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar_network/client
diff options
context:
space:
mode:
Diffstat (limited to 'sugar_network/client')
-rw-r--r--sugar_network/client/cache.py8
-rw-r--r--sugar_network/client/releases.py (renamed from sugar_network/client/implementations.py)14
-rw-r--r--sugar_network/client/routes.py12
-rw-r--r--sugar_network/client/solver.py14
4 files changed, 23 insertions, 25 deletions
diff --git a/sugar_network/client/cache.py b/sugar_network/client/cache.py
index 07daa16..e13ccb6 100644
--- a/sugar_network/client/cache.py
+++ b/sugar_network/client/cache.py
@@ -77,7 +77,7 @@ class Cache(object):
self._pool.__getitem__(guid)
return
_logger.debug('Checkin %r %d bytes long', guid, size)
- mtime = os.stat(self._volume['implementation'].path(guid)).st_mtime
+ mtime = os.stat(self._volume['release'].path(guid)).st_mtime
self._pool[guid] = (size, mtime)
self._du += size
@@ -109,10 +109,10 @@ class Cache(object):
if self._pool is not None:
return
- _logger.debug('Open implementations pool')
+ _logger.debug('Open releases pool')
pool = []
- impls = self._volume['implementation']
+ impls = self._volume['release']
for res in impls.find(not_layer=['local'])[0]:
meta = res.meta('data')
if not meta or 'blob_size' not in meta:
@@ -176,7 +176,7 @@ class Cache(object):
_logger.debug('Recycle stale %r to save %s bytes', guid, size)
else:
_logger.debug('Recycle %r to save %s bytes', guid, size)
- self._volume['implementation'].delete(guid)
+ self._volume['release'].delete(guid)
self._du -= size
if guid in self._pool:
del self._pool[guid]
diff --git a/sugar_network/client/implementations.py b/sugar_network/client/releases.py
index ca9e89c..98b14b2 100644
--- a/sugar_network/client/implementations.py
+++ b/sugar_network/client/releases.py
@@ -38,7 +38,7 @@ from sugar_network.toolkit import http, coroutine, enforce
_MIMETYPE_DEFAULTS_KEY = '/desktop/sugar/journal/defaults'
_MIMETYPE_INVALID_CHARS = re.compile('[^a-zA-Z0-9-_/.]')
-_logger = logging.getLogger('implementations')
+_logger = logging.getLogger('releases')
class Routes(object):
@@ -58,7 +58,7 @@ class Routes(object):
clone_path = self._volume['context'].path(request.guid, '.clone')
enforce(exists(clone_path), http.NotFound)
clone_impl = basename(os.readlink(clone_path))
- return self._volume['implementation'].path(clone_impl, 'data')
+ return self._volume['release'].path(clone_impl, 'data')
@route('GET', ['context', None], cmd='launch', arguments={'args': list},
mime_type='text/event-stream')
@@ -114,8 +114,7 @@ class Routes(object):
yield {'event': 'ready'}
else:
cloned_impl = basename(os.readlink(cloned_path))
- meta = self._volume['implementation'].get(
- cloned_impl).meta('data')
+ meta = self._volume['release'].get(cloned_impl).meta('data')
size = meta.get('unpack_size') or meta['blob_size']
self._cache.checkin(cloned_impl, size)
os.unlink(cloned_path)
@@ -213,7 +212,7 @@ class Routes(object):
def _checkin_impl(self, context, request, cache_call):
if 'clone' in context['layer']:
cache_call = self._cache.checkout
- impls = self._volume['implementation']
+ impls = self._volume['release']
if 'activity' in context['type']:
to_install = []
@@ -239,8 +238,7 @@ class Routes(object):
return cache_call(guid, size)
if blob is None:
- blob = self._call(method='GET',
- path=['implementation', guid, 'data'])
+ blob = self._call(method='GET', path=['release', guid, 'data'])
blob_dir = dirname(sel['path'])
if not exists(blob_dir):
@@ -318,7 +316,7 @@ class Routes(object):
if 'clone' not in context['layer']:
return self._map_exceptions(self.fallback, request, response)
guid = basename(os.readlink(context.path('.clone')))
- impl = self._volume['implementation'].get(guid)
+ impl = self._volume['release'].get(guid)
response.meta = impl.properties([
'guid', 'ctime', 'layer', 'author', 'tags',
'context', 'version', 'stability', 'license', 'notes', 'data',
diff --git a/sugar_network/client/routes.py b/sugar_network/client/routes.py
index e43eea5..c6ea6d2 100644
--- a/sugar_network/client/routes.py
+++ b/sugar_network/client/routes.py
@@ -21,7 +21,7 @@ from zipfile import ZipFile, ZIP_DEFLATED
from os.path import join, basename
from sugar_network import db, client, node, toolkit, model
-from sugar_network.client import journal, implementations
+from sugar_network.client import journal, releases
from sugar_network.node.slave import SlaveRoutes
from sugar_network.toolkit import netlink, mountpoints
from sugar_network.toolkit.router import ACL, Request, Response, Router
@@ -40,11 +40,11 @@ _LOCAL_LAYERS = frozenset(['local', 'clone', 'favorite'])
_logger = logging.getLogger('client.routes')
-class ClientRoutes(model.FrontRoutes, implementations.Routes, journal.Routes):
+class ClientRoutes(model.FrontRoutes, releases.Routes, journal.Routes):
def __init__(self, home_volume, api_url=None, no_subscription=False):
model.FrontRoutes.__init__(self)
- implementations.Routes.__init__(self, home_volume)
+ releases.Routes.__init__(self, home_volume)
journal.Routes.__init__(self)
self._local = _LocalRoutes(home_volume)
@@ -201,7 +201,7 @@ class ClientRoutes(model.FrontRoutes, implementations.Routes, journal.Routes):
request.update(kwargs)
if self._inline.is_set():
if client.layers.value and \
- request.resource in ('context', 'implementation'):
+ request.resource in ('context', 'release'):
request.add('layer', *client.layers.value)
request.principal = self._auth.login
try:
@@ -262,7 +262,7 @@ class ClientRoutes(model.FrontRoutes, implementations.Routes, journal.Routes):
def pull_events():
for event in self._node.subscribe():
- if event.get('resource') == 'implementation':
+ if event.get('resource') == 'release':
mtime = event.get('mtime')
if mtime:
self.invalidate_solutions(mtime)
@@ -273,7 +273,7 @@ class ClientRoutes(model.FrontRoutes, implementations.Routes, journal.Routes):
self._node = client.Connection(url, auth=self._auth)
status = self._node.get(cmd='status')
self._auth.allow_basic_auth = (status.get('level') == 'master')
- impl_info = status['resources'].get('implementation')
+ impl_info = status['resources'].get('release')
if impl_info:
self.invalidate_solutions(impl_info['mtime'])
if self._inline.is_set():
diff --git a/sugar_network/client/solver.py b/sugar_network/client/solver.py
index 0b24579..67350b6 100644
--- a/sugar_network/client/solver.py
+++ b/sugar_network/client/solver.py
@@ -149,7 +149,7 @@ def solve(call, context, stability):
if reason_exception is not None:
reason = reason_exception.message
else:
- reason = 'Cannot find implementations for %s' % ', '.join(missed)
+ reason = 'Cannot find releases for %s' % ', '.join(missed)
raise http.NotFound(reason)
solution = []
@@ -209,10 +209,10 @@ def _load_feed(context):
feed.to_resolve = feed_content.get('packages')
if not feed.to_resolve:
_logger.trace('[%s] No compatible packages', context)
- for impl in feed_content['implementations']:
+ for impl in feed_content['releases']:
feed.implement(impl)
if not feed.to_resolve and not feed.implementations:
- _logger.trace('[%s] No implementations', context)
+ _logger.trace('[%s] No releases', context)
return feed
@@ -242,7 +242,7 @@ class _Feed(model.ZeroInstallFeed):
def resolve(self, packages):
top_package = packages[0]
- impl = _Implementation(self, self.context, None)
+ impl = _Release(self, self.context, None)
impl.version = parse_version(top_package['version'])
impl.released = 0
impl.arch = '*-%s' % (top_package['arch'] or '*')
@@ -262,7 +262,7 @@ class _Feed(model.ZeroInstallFeed):
impl_id = release['guid']
spec = release['data']['spec']['*-*']
- impl = _Implementation(self, impl_id, None)
+ impl = _Release(self, impl_id, None)
impl.version = parse_version(release['version'])
impl.released = 0
impl.arch = '*-*'
@@ -288,7 +288,7 @@ class _Feed(model.ZeroInstallFeed):
def implement_sugar(self, sugar_version):
impl_id = 'sugar-%s' % sugar_version
- impl = _Implementation(self, impl_id, None)
+ impl = _Release(self, impl_id, None)
impl.version = parse_version(sugar_version)
impl.released = 0
impl.arch = '*-*'
@@ -302,7 +302,7 @@ class _Feed(model.ZeroInstallFeed):
}
-class _Implementation(model.ZeroInstallImplementation):
+class _Release(model.ZeroInstallImplementation):
to_install = None
sn_impl = None