def list_topostore_node()

in aliyun/log/logclient.py [0:0]


    def list_topostore_node(self, topostore_name, node_ids=None, node_types=None, property_key=None,
                property_value=None, offset=0, size=100):
        """list Topostore nodes
        Unsuccessful operation will cause an LogException.

        :type topostore_name: string
        :param topostore_name: topostore name

        :type node_ids: list of string
        :param node_ids: topostore node ids

        :type node_types: list of string
        :param node_types: list of node id(which is str)

        :type property_key: string
        :param property_key: property_key of node id property

        :type property_value: string
        :param property_value: property_value of node id property

        :type offset: long int
        :param offset: start location

        :type size: long int
        :param size: max nodes for each page

        """
        if not isinstance(topostore_name, str):
            raise TypeError("resource_name type must be str")

        if node_ids and not isinstance(node_ids, list):
            raise TypeError("node_ids type must be list,element is node id which type is str")

        if node_types and not isinstance(node_types, list):
            raise TypeError("node_types must be list of string")

        if node_types and isinstance(node_types, list):
            for node_type in node_types:
                if not isinstance(node_type, str):
                    raise TypeError("node_types must be list of string")

        if property_key and not isinstance(property_key, str):
            raise TypeError("property_key must be str")

        if property_value and not isinstance(property_value, str):
            raise TypeError("property_value must be str")

        if not (isinstance(size, int) and isinstance(offset, int)):
            raise TypeError("size and offset type must be int")

        headers = {}
        params = {"offset": offset, "size": size}
        if node_types is not None:
            params["nodeTypes"] = ','.join(node_types)
        if property_key is not None:
            params["propertyKey"] = property_key
        if property_value is not None:
            params["propertyValue"] = property_value
        if node_ids is not None:
            params["nodeIds"] = ','.join(node_ids)
        resource = "/topostores/" + topostore_name + "/nodes"
        (resp, header) = self._send("GET", None, None, resource, params, headers)
        return ListTopostoreNodesResponse(resp, header)