diff --git a/src/Client/ApiClientOptions.php b/src/Client/ApiClientOptions.php index 808f292cc76300f17879b7ea4d9c7ff62d3b4da1..34d16834be5e03f70048e8b6ee650693527585dc 100644 --- a/src/Client/ApiClientOptions.php +++ b/src/Client/ApiClientOptions.php @@ -29,4 +29,9 @@ interface ApiClientOptions extends HttpClientOptions, SerializerOptions */ public function isCachedClient(); + /** + * @return string + */ + public function getApiClientClass(); + } \ No newline at end of file diff --git a/src/Client/ClientFactory.php b/src/Client/ClientFactory.php index 81ad8aa30ed2b52729e11cd02262e95c84277746..0cc058e53f912982e8d6713a51cf4e5eec98e7ab 100644 --- a/src/Client/ClientFactory.php +++ b/src/Client/ClientFactory.php @@ -17,7 +17,9 @@ class ClientFactory $httpClientFactory = new HttpClientFactory(); $serializerFactory = new SerializerFactory(); - $client = new ClientImplementation( + $className = $options->getApiClientClass(); + + $client = new $className( $httpClientFactory->createClient($options), $serializerFactory->createSerializer($options), $options->getLogger(),