public function getPayPalHeaders($apiCred, $connection, $accessToken = null, $tokenSecret = null, $url = null)
 {
     $config = PPConfigManager::getInstance();
     if (isset($accessToken) && isset($tokenSecret)) {
         $headers_arr[] = "X-PAYPAL-AUTHORIZATION:  " . $this->generateAuthString($apiCred, $accessToken, $tokenSecret, $url);
         //$headers_arr[] = "CLIENT-AUTH: No cert";
     } else {
         if ($apiCred instanceof PPSignatureCredential) {
             $headers_arr[] = "X-PAYPAL-SECURITY-USERID:  " . $apiCred->getUserName();
             $headers_arr[] = "X-PAYPAL-SECURITY-PASSWORD: "******"X-PAYPAL-SECURITY-SIGNATURE: " . $apiCred->getSignature();
         } else {
             if ($apiCred instanceof PPCertificateCredential) {
                 $headers_arr[] = "X-PAYPAL-SECURITY-USERID:  " . $apiCred->getUserName();
                 $headers_arr[] = "X-PAYPAL-SECURITY-PASSWORD: "******"X-PAYPAL-APPLICATION-ID: " . $apiCred->getApplicationId();
     $headers_arr[] = "X-PAYPAL-REQUEST-DATA-FORMAT: " . $config->get('service.Binding');
     $headers_arr[] = "X-PAYPAL-RESPONSE-DATA-FORMAT: " . $config->get('service.Binding');
     $headers_arr[] = "X-PAYPAL-DEVICE-IPADDRESS: " . PPUtils::getLocalIPAddress();
     $headers_arr[] = "X-PAYPAL-REQUEST-SOURCE: " . PPUtils::getRequestSource();
     return $headers_arr;
 }
 public function handle($httpConfig, $request)
 {
     $config = PPConfigManager::getInstance();
     $httpConfig->addHeader('X-PAYPAL-REQUEST-DATA-FORMAT', $request->getBindingType());
     $httpConfig->addHeader('X-PAYPAL-RESPONSE-DATA-FORMAT', $request->getBindingType());
     $httpConfig->addHeader('X-PAYPAL-DEVICE-IPADDRESS', PPUtils::getLocalIPAddress());
     $httpConfig->addHeader('X-PAYPAL-REQUEST-SOURCE', PPUtils::getRequestSource());
     if (strstr($httpConfig->getUrl(), "/AdaptiveAccounts/") && strstr($httpConfig->getUrl(), "sandbox")) {
         $httpConfig->addHeader('X-PAYPAL-SANDBOX-EMAIL-ADDRESS', $config->get('service.SandboxEmailAddress'));
     }
 }