1
from piston_mini_client import (PistonAPI, returns_json)
2
from piston_mini_client.validators import (validate, oauth_protected)
4
# These are factored out as constants for if you need to work against a
5
# server that doesn't support both schemes (like http-only dev servers)
6
PUBLIC_API_SCHEME = 'http'
7
AUTHENTICATED_API_SCHEME = 'https'
9
class SoftwareCenterRecommenderAPI(PistonAPI):
10
default_service_root = 'http://localhost:8000/api/2.0'
13
def server_status(self):
14
return self._get('server-status', scheme=PUBLIC_API_SCHEME)
19
return self._get('profile', scheme=PUBLIC_API_SCHEME)
22
def recommend_me(self):
23
return self._get('recommended_me', scheme=PUBLIC_API_SCHEME)
26
@validate('pkgname', str)
27
def recommend_app(self, pkgname):
28
return self._get('recommended_app/%s/' % pkgname,
29
scheme=PUBLIC_API_SCHEME)
32
def recommend_top(self):
33
return self._get('recommend_top', scheme=PUBLIC_API_SCHEME)
37
return self._get('feedback', scheme=PUBLIC_API_SCHEME)