Пример #1
0
    def update_node(self, request):

        node_iface = Node(self.getStore())
        node_description_dict = node_iface.update(request)

        self.returnData(node_description_dict)
        self.returnCode(201)
        return self.prepareRetVals()
Пример #2
0
    def get_node(self):

        node_iface = Node(self.getStore())
        node_description_dict = node_iface.get_single()

        self.returnData(node_description_dict)
        self.returnCode(200)
        return self.prepareRetVals()
Пример #3
0
        def run_test():
            yield tables.runCreateTable(Node)

            count = tables.count(Node)
            self.assertEqual(count, 0)

            store = config.main.zstorm.get('main_store')
            nodetest = Node()
            nodetest.name = u"test"
            nodetest.description = u"test"
            nodetest.hidden_service = u"test"
            nodetest.public_site = u"test"
            nodetest.email = u"*****@*****.**"
            nodetest.private_stats_update_time = 30 # minutes
            nodetest.public_stats_update_time = 120 # minutes
            nodetest.languages = [ { "code" : "it" , "name": "Italiano"}, { "code" : "en" , "name" : "English" }]
            store.add(nodetest)

            count = tables.count(Node)
            self.assertEqual(count, 1)

            # select & verify
            node = store.find(Node, 1 == Node.id).one()
            cls_info = get_cls_info(Node)
            for name in cls_info.attributes.iterkeys():
                self.assertEqual(getattr(node, name, ""), getattr(nodetest, name, ""))
Пример #4
0
    def get(self, *uriargs):
        """
        Parameters: None
        Response: adminNodeDesc
        Errors: NodeNotFound
        """

        try:
            node_info = Node()
            node_description_dicts = yield node_info.get()

            self.set_status(200)
            self.write(node_description_dicts)

        except NodeNotFound, e:

            self.set_status(e.http_status)
            self.write({'error_message': e.error_message, 'error_code' : e.error_code})
Пример #5
0
    def get(self, *uriargs):
        """
        Parameters: None
        Response: publicNodeDesc
        Errors: NodeNotFound
        """

        log.debug("[D] %s %s " % (__file__, __name__), "Class Node", "get", uriargs)

        try:
            nodeinfo = Node()
            node_description_dicts = yield nodeinfo.get_public_info()

            self.write(node_description_dicts)

        except NodeNotFound, e:

            self.set_status(e.http_status)
            self.write({'error_message': e.error_message, 'error_code' : e.error_code})
Пример #6
0
    def put(self, *uriargs):
        """
        Request: adminNodeDesc
        Response: adminNodeDesc
        Errors: InvalidInputFormat

        Changes the node public node configuration settings
        """

        try:
            request = validateMessage(self.request.body, requests.adminContextDesc)

            node_info = Node()
            yield node_info.configure_node(request)
            node_description_dicts = yield node_info.get()

            self.set_status(201) # Created
            self.write(node_description_dicts)

        except InvalidInputFormat, e:

            self.set_status(e.http_status)
            self.write({'error_message': e.error_message, 'error_code' : e.error_code})
Пример #7
0
def initializeNode():
    """
    This function is called only one time in a node life, and initialize
    the table. the configure_node run edit of this row (id = 1)
    This is not a @transact but is a white fly for this reason.
    """
    store = config.main.zstorm.get('main_store')

    onlyNode = Node()

    onlyNode.name = u"Please, set me: name/title"
    onlyNode.description = u"Please, set me: description"
    onlyNode.hidden_service = u"Please, set me: hidden service"
    onlyNode.public_site = u"Please, set me: public site"
    onlyNode.email = u"*****@*****.**"
    onlyNode.stats_update_time = 2 # hours
    onlyNode.languages = [ { "code" : "it" , "name": "Italiano"}, { "code" : "en" , "name" : "English" }]

    store.add(onlyNode)