PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / vendor / otgs / installer / src / Api / InstallerApiClient.php
woocommerce-multilingual / vendor / otgs / installer / src / Api Last commit date
Client 1 month ago Endpoint 1 month ago Exception 3 years ago InstallerApiClient.php 1 month ago InstallerApiClientFactory.php 1 month ago SiteUrl.php 1 month ago
InstallerApiClient.php
59 lines
1 <?php
2
3 namespace OTGS\Installer\Api;
4
5 use OTGS\Installer\Api\Client\Client;
6 use OTGS\Installer\Api\Endpoint\Subscription as SubscriptionEndpoint;
7 use OTGS\Installer\Api\Endpoint\ProductBucketUrl as ProductBucketUrlEndpoint;
8 use OTGS_Installer_Log;
9 use OTGS_Installer_Logger_Storage;
10
11 class InstallerApiClient {
12 private $client;
13
14 private $subscription;
15
16 private $productBucketUrl;
17
18 private $loggerStorage;
19
20 public function __construct( OTGS_Installer_Logger_Storage $loggerStorage, Client $client, SubscriptionEndpoint $subscription, ProductBucketUrlEndpoint $productBucketUrl ) {
21 $this->loggerStorage = $loggerStorage;
22 $this->client = $client;
23 $this->subscription = $subscription;
24 $this->productBucketUrl = $productBucketUrl;
25 }
26
27 public function fetchSubscription( $siteKey, $source ) {
28 $requestParams = $this->subscription->prepareRequest( $siteKey, $source );
29 try {
30 $response = $this->client->post( $requestParams );
31
32 return $this->subscription->parseResponse( $response );
33 } catch ( \Exception $exception ) {
34 throw new \OTGS_Installer_Fetch_Subscription_Exception( $exception->getMessage() );
35 }
36 }
37
38 public function fetchProductUrl( $siteKey ) {
39 $requestParams = $this->productBucketUrl->prepareRequest( $siteKey );
40 try {
41 $response = $this->client->post( $requestParams );
42
43 return $this->productBucketUrl->parseResponse( $response );
44 } catch ( \Exception $exception ) {
45 $this->log( $requestParams, $exception->getMessage() );
46 }
47
48 return false;
49 }
50
51 private function log( $args, $response ) {
52 $log = new OTGS_Installer_Log();
53 $log->set_request_args( $args )
54 ->set_response( $response )
55 ->set_component( OTGS_Installer_Logger_Storage::COMPONENT_SUBSCRIPTION );
56
57 $this->loggerStorage->add( $log );
58 }
59 }