Server IP : 85.214.239.14 / Your IP : 216.73.216.26 Web Server : Apache/2.4.65 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Mon Sep 30 15:36:27 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 8.2.29 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /lib/python3/dist-packages/ansible_collections/ansible/netcommon/plugins/sub_plugins/grpc/ |
Upload File : |
# (c) 2022 Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later # from __future__ import absolute_import, division, print_function __metaclass__ = type from functools import wraps from ansible.plugins import AnsiblePlugin def ensure_connect(func): @wraps(func) def wrapped(self, *args, **kwargs): if not self._connection._connected: self._connection._connect() return func(self, *args, **kwargs) return wrapped class GrpcBase(AnsiblePlugin): """ A base class for implementing gRPC abstraction layer """ __rpc__ = ["channel", "get_config", "edit_config", "get"] def __init__(self, connection): super(GrpcBase, self).__init__() self._connection = connection @property @ensure_connect def channel(self): return self._connection._channel def get_config(self, section=None): """ Retrieve all or part of a specified configuration (by default entire configuration is retrieved). :param section: This argument specifies the portion of the configuration data to retrieve :return: Returns the response received from gRPC server from target host in string format """ pass def get(self, section=None): """ Retrieve device state information. :param section: This argument specifies the portion of the state data to retrieve (by default entire state data is retrieved) :return: Returns the json string as a response """ pass def edit_config(self, config=None, action=None): """ Loads all or part of the specified *config* to the configuration datastore. :param config: The configuration that needs to be push on target host :param action: The action to be performed on the configuration datastore for example: 'merge', 'replace', 'delete' etc. :return: Returns the response received from gRPC server from target host in string format """ pass