o |nh @sFdZddlZddlmZmZddlmZeeZ GdddeZ dS)z!Kv secret backend methods module.N)kv_v1kv_v2) VaultApiBasecsdeZdZdZddgZdfdd ZeddZedd Zed d Z e j d d Z d dZ Z S)KvzClass containing methods for the key/value secrets_engines backend API routes. Reference: https://www.vaultproject.io/docs/secrets/kv/index.html 12cs8tj|d||_tj|jd|_tj|jd|_ dS)aCreate a new Kv instance. :param adapter: Instance of :py:class:`hvac.adapters.Adapter`; used for performing HTTP requests. :type adapter: hvac.adapters.Adapter :param default_kv_version: KV version number (e.g., '1') to use as the default when accessing attributes/methods under this class. :type default_kv_version: str | unicode )adapterN) super__init___default_kv_versionrKvV1_adapter_kv_v1rKvV2_kv_v2)selfrdefault_kv_version __class__F/usr/local/lib/python3.10/dist-packages/hvac/api/secrets_engines/kv.pyr s z Kv.__init__cC|jS)zAccessor for kv version 1 class / method. Provided via the :py:class:`hvac.api.secrets_engines.kv_v1.KvV1` class. :return: This Kv instance's associated KvV1 instance. :rtype: hvac.api.secrets_engines.kv_v1.KvV1 )rrrrrv1"zKv.v1cCr)zAccessor for kv version 2 class / method. Provided via the :py:class:`hvac.api.secrets_engines.kv_v2.KvV2` class. :return: This Kv instance's associated KvV2 instance. :rtype: hvac.api.secrets_engines.kv_v2.KvV2 )rrrrrv2+rzKv.v2cCr)N)r rrrrr4szKv.default_kv_versioncCs:t||jvrdjd|j|d}t|t||_dS)NzHInvalid "default_kv_version"; "{allowed}" allowed, "{provided}" provided,)allowedprovided)strallowed_kv_versionsformatjoin ValueErrorr )rr error_messagerrrr8s  cCs<|dvrt|jdkrt|j|S|jdkrt|j|St)aqOverridden magic method used to direct method calls to the appropriate KV version's hvac class. :param item: Name of the attribute/method being accessed :type item: str | unicode :return: The selected secrets_engines class corresponding to this instance's default_kv_version setting :rtype: hvac.api.vault_api_base.VaultApiBase )r rrr)AttributeErrorrgetattrrr)ritemrrr __getattr__As    zKv.__getattr__)r) __name__ __module__ __qualname____doc__r r propertyrrrsetterr( __classcell__rrrrr s    r) r,logginghvac.api.secrets_enginesrrhvac.api.vault_api_baser getLoggerr)loggerrrrrrs