Example #1
0
    def __init__(self,
                 customer_name=None,
                 count=DefaultQueryValues.COUNT,
                 offset=DefaultQueryValues.OFFSET,
                 sort=SortValues.DESC,
                 sort_key=AgentOperationKey.CreatedTime,
                 user_name=None,
                 uri=None,
                 method=None):
        """
        Kwargs:
            customer_name (str): Name of the current customer.
                default = None
            count (int): Maximum number of results to return.
                default = 30
            offset (int): Retrieve operations after this number. Pagination.
                default = 0
            sort (str): Sort either by asc or desc.
                default = desc
            sort_key (str): Sort by a valid field.
                examples... operation, status, created_time, updated_time,
                completed_time, and created_by.
                default = created_time
            user_name (str): Name of the user, who is retrieving the operations.
                default = None
            uri (str): The uri that made this api call.
                default = None
            method (str): The http method that was use to make this call.
                default = None

        Basic Usage:
            >>> from vFense.operations.search.agent_search import AgentOperationRetriever
            >>> customer_name = 'default'
            >>> operation = AgentOperationRetriever(customer_name)
        """

        self.user_name = user_name
        self.customer_name = customer_name
        self.uri = uri
        self.method = method
        sort_by_list = ([
            AgentOperationKey.Operation,
            AgentOperationKey.OperationStatus,
            AgentOperationKey.CreatedTime,
            AgentOperationKey.UpdatedTime,
            AgentOperationKey.CompletedTime,
            AgentOperationKey.CreatedBy,
            AgentOperationKey.CustomerName,
        ])
        if sort_key in sort_by_list:
            sort_key = sort_key
        else:
            sort_key = AgentOperationKey.CreatedTime

        self.agent_operations = (FetchAgentOperations(customer_name, count,
                                                      offset, sort, sort_key))