Source code for worldline.acquiring.sdk.client

# -*- coding: utf-8 -*-
#
# This file was automatically generated.
#
from datetime import timedelta

from .api_resource import ApiResource
from .communicator import Communicator

from worldline.acquiring.sdk.log.body_obfuscator import BodyObfuscator
from worldline.acquiring.sdk.log.communicator_logger import CommunicatorLogger
from worldline.acquiring.sdk.log.header_obfuscator import HeaderObfuscator
from worldline.acquiring.sdk.log.logging_capable import LoggingCapable
from worldline.acquiring.sdk.log.obfuscation_capable import ObfuscationCapable
from worldline.acquiring.sdk.v1.v1_client import V1Client


[docs] class Client(ApiResource, LoggingCapable, ObfuscationCapable): """ Worldline Acquiring platform client. Thread-safe. """
[docs] def __init__(self, communicator: Communicator): """ :param communicator: :class:`worldline.acquiring.sdk.communicator.Communicator` """ super(Client, self).__init__(communicator=communicator)
[docs] def close_idle_connections(self, idle_time: timedelta) -> None: """ Utility method that delegates the call to this client's communicator. :param idle_time: a datetime.timedelta object indicating the idle time """ self._communicator.close_idle_connections(idle_time)
[docs] def close_expired_connections(self) -> None: """ Utility method that delegates the call to this client's communicator. """ self._communicator.close_expired_connections()
[docs] def set_body_obfuscator(self, body_obfuscator: BodyObfuscator) -> None: # delegate to the communicator self._communicator.set_body_obfuscator(body_obfuscator)
[docs] def set_header_obfuscator(self, header_obfuscator: HeaderObfuscator) -> None: # delegate to the communicator self._communicator.set_header_obfuscator(header_obfuscator)
[docs] def enable_logging(self, communicator_logger: CommunicatorLogger) -> None: # delegate to the communicator self._communicator.enable_logging(communicator_logger)
[docs] def disable_logging(self) -> None: # delegate to the communicator self._communicator.disable_logging()
[docs] def close(self) -> None: """ Releases any system resources associated with this object. """ self._communicator.close()
[docs] def __enter__(self): return self
[docs] def __exit__(self, exc_type, exc_val, exc_tb): self.close()
[docs] def v1(self) -> V1Client: return V1Client(self, None)