From b48bcdfb45761d4618f498afb47cf8e181fa5748 Mon Sep 17 00:00:00 2001
From: Grzegorz Rola <grola@seostudio.pl>
Date: Sat, 9 Feb 2019 15:09:50 +0100
Subject: [PATCH] Api class

---
 src/Client/ApiClientOptions.php | 5 +++++
 src/Client/ClientFactory.php    | 4 +++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/Client/ApiClientOptions.php b/src/Client/ApiClientOptions.php
index 808f292..34d1683 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 81ad8aa..0cc058e 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(),
-- 
GitLab