public function getSubscription($subscriptionRequest)
    {
        if (is_array($subscriptionRequest)) {
            $subscriptionRequest = RequestCreator::create(GetSubscriptionRequest::class, $subscriptionRequest);
        } else if (!($subscriptionRequest instanceof GetSubscriptionRequest)) {
            $subscriptionRequest = new GetSubscriptionRequest($subscriptionRequest);
        }

        ObjectRecursiveValidator::validate($subscriptionRequest);
        $serializer = new GetSubscriptionSerializer($subscriptionRequest);
        $transport = new GetSubscriptionTransport($serializer);

        return $this->execute($transport, GetSubscriptionResponse::class);
    }
public function getSubscription($subscriptionRequest)
    {
        if (is_array($subscriptionRequest)) {
            $subscriptionRequest = RequestCreator::create(GetSubscriptionRequest::class, $subscriptionRequest);
        } else if (!($subscriptionRequest instanceof GetSubscriptionRequest)) {
            $subscriptionRequest = new GetSubscriptionRequest($subscriptionRequest);
        }

        ObjectRecursiveValidator::validate($subscriptionRequest);
        $serializer = new GetSubscriptionSerializer($subscriptionRequest);
        $transport = new GetSubscriptionTransport($serializer);

        return $this->execute($transport, GetSubscriptionResponse::class);
    }
@param array|GetSubscriptionRequest $subscriptionRequest

@return AbstractResponse|GetSubscriptionResponse
@throws ResponseException
@throws TransportException