def perform_odl_snmp_operation(**kwargs):
    """
    Author: Sirish
    Date: 11/07/2018
    Prepare the RESTCONF input and send for GET operation
    IP,OID,COMMUNITY and VALUE/GET_TYPE
    :return: SNMP-GET output
    """
    input = ControllerConfig.SNMP_INPUT
    payload = deepcopy(input)
    payload['input']['ip-address'] = kwargs['IP']
    payload['input']['oid'] = kwargs['OID']
    payload['input']['community'] = kwargs['COMMUNITY']
    if 'VALUE' in kwargs:
        snmp_operation = 'snmp-set'
        payload['input']['value'] = payload['input'].pop('get-type')
        payload['input']['value'] = kwargs['VALUE']
    else:
        snmp_operation = 'snmp-get'
        get_type = kwargs['GETTYPE'] if 'GETTYPE' in kwargs else 'GET'
        payload['input']['get-type'] = get_type
    API_URL = ControllerConfig.SNMP_API + snmp_operation
    rest_session.send_post_request(url=API_URL, data=json.dumps(payload))
    return rest_session.response_code, arrange_snmp_result(
        rest_session.response_as_text)
Пример #2
0
    def create_apply_actions(self):

        payload = {self._APPLY_ACTIONS_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text
Пример #3
0
    def create_instruction(self):

        payload = {self._INSTRUCTION_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text
Пример #4
0
    def create_icmpv4_match(self):

        payload = {self._ICMPV4_MATCH_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text
Пример #5
0
    def create_vlan_id(self):

        payload = {self._VLAN_ID_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text
Пример #6
0
    def create_ethernet_destination(self):

        payload = {self._ETHERNET_DESTINATION_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text
Пример #7
0
    def create_output_action(self):

        payload = {self._PUSH_VLAN_ACTION_FIELD: self.get_template()}
        rest_session.send_post_request(url=self._REST_URL,
                                       data=json.dumps(payload))
        return rest_session.response_code, rest_session.response_as_text