コード例 #1
0
 def createResourceNode(self, node):
     # this is a bit inelegant because it's not using a hypermedia form
     self._url = self._server + node.getModel()[v._bn]
     #print "payload: ", node._resource.serialize()
     self._request = HypermediaHttpRequest(self._url, \
             {v.method: v.post, v.contentFormat: v.senmlCollectionType, v.payload: node._resource.serialize() })
     self._request.send()
     self._request.getResponse()
コード例 #2
0
 def getItem(self, uriPath="/"):
     self._url = self._server + uriPath
     self._request = HypermediaHttpRequest(self._url, \
             {v.method:v.get, v.contentFormat:v.plainTextType })
     self._request.send()
     self._request.getResponse()
     #print "payload: ", self._request._requestMap[v.response][v.payload]
     return json.loads(self._request._requestMap[v.response][v.payload] ) 
コード例 #3
0
 def putItem(self, uriPath="/", newItem = None):
     self._url = self._server + uriPath
     self._request = HypermediaHttpRequest(self._url, \
             {v.method:v.put, v.contentFormat:v.plainTextType, v.payload:json.dumps(newItem) })
     self._request.send()
     self._request.getResponse()
     #print "payload: ", self._request._requestMap[v.response][v.payload]
     return 
コード例 #4
0
 def _getResource(self, uriPath="/"):
     self._url = self._server + uriPath
     self._request = HypermediaHttpRequest(self._url, \
             {v.method:v.get, v.contentFormat:v.senmlCollectionType })
     self._request.send()
     self._request.getResponse()
     #print "payload: ", self._request._requestMap[v.response][v.payload]
     return ResourceNode( json.loads(self._request._requestMap[v.response][v.payload] ) )
コード例 #5
0
class Server:
    def __init__(self, server=None):
        if server:
            self._server = server
        
    def createResourceNode(self, node):
        # this is a bit inelegant because it's not using a hypermedia form
        self._url = self._server + node.getModel()[v._bn]
        #print "payload: ", node._resource.serialize()
        self._request = HypermediaHttpRequest(self._url, \
                {v.method: v.post, v.contentFormat: v.senmlCollectionType, v.payload: node._resource.serialize() })
        self._request.send()
        self._request.getResponse()
        # print "Status: ", self._request._requestMap[v.response][v.status],
        # if v.location in self._request._requestMap[v.options] :
            # print "Location: ", self._request._requestMap[v.options][v.location],
        
    def getResources(self, uriPath, resourceArray):
        self._getResourceRecursive(uriPath, resourceArray)
    
    def _getResourceRecursive(self, uriPath, resourceArray):
        #print "subresource link: ", uriPath
        resourceNode = self._getResource(uriPath)
        resourceArray.append(resourceNode)
        for link in resourceNode._links.get({v._rel:v._sub}) :
            self._getResourceRecursive(resourceNode._baseName + link[v._href], resourceArray)

    def _getResource(self, uriPath="/"):
        self._url = self._server + uriPath
        self._request = HypermediaHttpRequest(self._url, \
                {v.method:v.get, v.contentFormat:v.senmlCollectionType })
        self._request.send()
        self._request.getResponse()
        #print "payload: ", self._request._requestMap[v.response][v.payload]
        return ResourceNode( json.loads(self._request._requestMap[v.response][v.payload] ) )

    def getItem(self, uriPath="/"):
        self._url = self._server + uriPath
        self._request = HypermediaHttpRequest(self._url, \
                {v.method:v.get, v.contentFormat:v.plainTextType })
        self._request.send()
        self._request.getResponse()
        #print "payload: ", self._request._requestMap[v.response][v.payload]
        return json.loads(self._request._requestMap[v.response][v.payload] ) 

    def putItem(self, uriPath="/", newItem = None):
        self._url = self._server + uriPath
        self._request = HypermediaHttpRequest(self._url, \
                {v.method:v.put, v.contentFormat:v.plainTextType, v.payload:json.dumps(newItem) })
        self._request.send()
        self._request.getResponse()
        #print "payload: ", self._request._requestMap[v.response][v.payload]
        return