diff --git a/src/main/java/Api/CaptureApi.java b/src/main/java/Api/CaptureApi.java index 3d1c71fa5..1422e55bc 100644 --- a/src/main/java/Api/CaptureApi.java +++ b/src/main/java/Api/CaptureApi.java @@ -22,7 +22,7 @@ import Invokers.ProgressRequestBody; import Invokers.ProgressResponseBody; - +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import java.io.IOException; @@ -45,6 +45,11 @@ public class CaptureApi { public CaptureApi() { this(Configuration.getDefaultApiClient()); } + + public CaptureApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public CaptureApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -83,6 +88,7 @@ public com.squareup.okhttp.Call capturePaymentCall(CapturePaymentRequest capture final String[] localVarAccepts = { "application/hal+json" }; + final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts); if (localVarAccept != null) localVarHeaderParams.put("Accept", localVarAccept); diff --git a/src/main/java/Api/CreditApi.java b/src/main/java/Api/CreditApi.java index 237b207fe..b0b57b0ff 100644 --- a/src/main/java/Api/CreditApi.java +++ b/src/main/java/Api/CreditApi.java @@ -22,6 +22,7 @@ import Invokers.ProgressRequestBody; import Invokers.ProgressResponseBody; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import java.io.IOException; @@ -44,6 +45,11 @@ public class CreditApi { public CreditApi() { this(Configuration.getDefaultApiClient()); } + + public CreditApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public CreditApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/FlexTokenApi.java b/src/main/java/Api/FlexTokenApi.java index 6efd1781b..3c495ef83 100644 --- a/src/main/java/Api/FlexTokenApi.java +++ b/src/main/java/Api/FlexTokenApi.java @@ -22,6 +22,7 @@ import Invokers.ProgressRequestBody; import Invokers.ProgressResponseBody; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import java.io.IOException; @@ -43,6 +44,11 @@ public class FlexTokenApi { public FlexTokenApi() { this(Configuration.getDefaultApiClient()); } + + public FlexTokenApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public FlexTokenApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/InstrumentIdentifierApi.java b/src/main/java/Api/InstrumentIdentifierApi.java index 25e841e31..fb3bf656a 100644 --- a/src/main/java/Api/InstrumentIdentifierApi.java +++ b/src/main/java/Api/InstrumentIdentifierApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -39,6 +40,11 @@ public class InstrumentIdentifierApi { public InstrumentIdentifierApi() { this(Configuration.getDefaultApiClient()); } + + public InstrumentIdentifierApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public InstrumentIdentifierApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/InstrumentIdentifiersApi.java b/src/main/java/Api/InstrumentIdentifiersApi.java index f3eb50f3b..dfaef1a54 100644 --- a/src/main/java/Api/InstrumentIdentifiersApi.java +++ b/src/main/java/Api/InstrumentIdentifiersApi.java @@ -53,6 +53,11 @@ public class InstrumentIdentifiersApi { public InstrumentIdentifiersApi() { this(Configuration.getDefaultApiClient()); } + + public InstrumentIdentifiersApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public InstrumentIdentifiersApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/KeyGenerationApi.java b/src/main/java/Api/KeyGenerationApi.java index ebc353b41..5fc949b58 100644 --- a/src/main/java/Api/KeyGenerationApi.java +++ b/src/main/java/Api/KeyGenerationApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public KeyGenerationApi() { this(Configuration.getDefaultApiClient()); } + public KeyGenerationApi(MerchantConfig config) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(config); + } + public KeyGenerationApi(ApiClient apiClient) { this.apiClient = apiClient; } diff --git a/src/main/java/Api/NotificationOfChangesApi.java b/src/main/java/Api/NotificationOfChangesApi.java index 09791fd87..1e3dc42e7 100644 --- a/src/main/java/Api/NotificationOfChangesApi.java +++ b/src/main/java/Api/NotificationOfChangesApi.java @@ -22,6 +22,7 @@ import org.joda.time.DateTime; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public class NotificationOfChangesApi { public NotificationOfChangesApi() { this(Configuration.getDefaultApiClient()); } + + public NotificationOfChangesApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public NotificationOfChangesApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/PaymentInstrumentsApi.java b/src/main/java/Api/PaymentInstrumentsApi.java index 9cf46d9c8..5784f9430 100644 --- a/src/main/java/Api/PaymentInstrumentsApi.java +++ b/src/main/java/Api/PaymentInstrumentsApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -41,6 +42,11 @@ public class PaymentInstrumentsApi { public PaymentInstrumentsApi() { this(Configuration.getDefaultApiClient()); } + + public PaymentInstrumentsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public PaymentInstrumentsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/PaymentsApi.java b/src/main/java/Api/PaymentsApi.java index e3e809052..08bc1dc2d 100644 --- a/src/main/java/Api/PaymentsApi.java +++ b/src/main/java/Api/PaymentsApi.java @@ -19,6 +19,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -38,6 +39,11 @@ public class PaymentsApi { public PaymentsApi() { this(Configuration.getDefaultApiClient()); } + + public PaymentsApi(MerchantConfig config) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(config); + } public PaymentsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/ProcessAPayoutApi.java b/src/main/java/Api/ProcessAPayoutApi.java index fa37c797d..eebbee175 100644 --- a/src/main/java/Api/ProcessAPayoutApi.java +++ b/src/main/java/Api/ProcessAPayoutApi.java @@ -44,6 +44,11 @@ public class ProcessAPayoutApi { public ProcessAPayoutApi() { this(Configuration.getDefaultApiClient()); } + + public ProcessAPayoutApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ProcessAPayoutApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -84,7 +89,7 @@ public com.squareup.okhttp.Call octCreatePaymentCall(PtsV2PayoutsPostResponse oc if (localVarAccept != null) localVarHeaderParams.put("Accept", localVarAccept); final String[] localVarContentTypes = { - "application/json" + "application/json;charset=utf-8" }; final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes); localVarHeaderParams.put("Content-Type", localVarContentType); diff --git a/src/main/java/Api/PurchaseAndRefundDetailsApi.java b/src/main/java/Api/PurchaseAndRefundDetailsApi.java index 73f0cf81a..373938155 100644 --- a/src/main/java/Api/PurchaseAndRefundDetailsApi.java +++ b/src/main/java/Api/PurchaseAndRefundDetailsApi.java @@ -21,6 +21,8 @@ import org.joda.time.DateTime; +import com.cybersource.authsdk.core.MerchantConfig; + import Invokers.ApiCallback; import Invokers.ApiClient; import Invokers.ApiException; @@ -36,6 +38,11 @@ public class PurchaseAndRefundDetailsApi { public PurchaseAndRefundDetailsApi() { this(Configuration.getDefaultApiClient()); } + + public PurchaseAndRefundDetailsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public PurchaseAndRefundDetailsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/RefundApi.java b/src/main/java/Api/RefundApi.java index 5cce6b052..85b218561 100644 --- a/src/main/java/Api/RefundApi.java +++ b/src/main/java/Api/RefundApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public class RefundApi { public RefundApi() { this(Configuration.getDefaultApiClient()); } + + public RefundApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public RefundApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -82,7 +88,7 @@ public com.squareup.okhttp.Call refundCaptureCall(RefundCaptureRequest refundCap if (localVarAccept != null) localVarHeaderParams.put("Accept", localVarAccept); final String[] localVarContentTypes = { - "application/json" + "application/json;charset=utf-8" }; final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes); localVarHeaderParams.put("Content-Type", localVarContentType); diff --git a/src/main/java/Api/ReportDefinitionsApi.java b/src/main/java/Api/ReportDefinitionsApi.java index 94b75d474..092df94b4 100644 --- a/src/main/java/Api/ReportDefinitionsApi.java +++ b/src/main/java/Api/ReportDefinitionsApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -39,6 +40,11 @@ public class ReportDefinitionsApi { public ReportDefinitionsApi() { this(Configuration.getDefaultApiClient()); } + + public ReportDefinitionsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ReportDefinitionsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/ReportDownloadsApi.java b/src/main/java/Api/ReportDownloadsApi.java index e16fbf93f..2d437dca4 100644 --- a/src/main/java/Api/ReportDownloadsApi.java +++ b/src/main/java/Api/ReportDownloadsApi.java @@ -21,6 +21,8 @@ import org.joda.time.LocalDate; +import com.cybersource.authsdk.core.MerchantConfig; + import Invokers.ApiCallback; import Invokers.ApiClient; import Invokers.ApiException; @@ -36,6 +38,11 @@ public class ReportDownloadsApi { public ReportDownloadsApi() { this(Configuration.getDefaultApiClient()); } + + public ReportDownloadsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ReportDownloadsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/ReportSubscriptionsApi.java b/src/main/java/Api/ReportSubscriptionsApi.java index 9f0281175..734d06028 100644 --- a/src/main/java/Api/ReportSubscriptionsApi.java +++ b/src/main/java/Api/ReportSubscriptionsApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public class ReportSubscriptionsApi { public ReportSubscriptionsApi() { this(Configuration.getDefaultApiClient()); } + + public ReportSubscriptionsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ReportSubscriptionsApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -66,7 +72,7 @@ public com.squareup.okhttp.Call createSubscriptionCall(RequestBody requestBody, // create path and map variables String localVarPath = "/reporting/v3/report-subscriptions"; - /*.replaceAll("\\{" + "reportName" + "\\}", apiClient.escapeString(reportName.toString()));*/ + /* .replaceAll("\\{" + "reportName" + "\\}", apiClient.escapeString(reportName.toString()));*/ List localVarQueryParams = new ArrayList(); diff --git a/src/main/java/Api/ReportsApi.java b/src/main/java/Api/ReportsApi.java index b335b7d3c..6788780dc 100644 --- a/src/main/java/Api/ReportsApi.java +++ b/src/main/java/Api/ReportsApi.java @@ -22,6 +22,7 @@ import org.joda.time.DateTime; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -42,6 +43,11 @@ public class ReportsApi { public ReportsApi() { this(Configuration.getDefaultApiClient()); } + + public ReportsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ReportsApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -86,6 +92,9 @@ public com.squareup.okhttp.Call createReportCall(RequestBody1 requestBody, final }; final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes); localVarHeaderParams.put("Content-Type", localVarContentType); + + Pair pair=new Pair("orgId", "testrest"); + localVarQueryParams.add(pair); if(progressListener != null) { apiClient.getHttpClient().networkInterceptors().add(new com.squareup.okhttp.Interceptor() { @@ -128,8 +137,8 @@ private com.squareup.okhttp.Call createReportValidateBeforeCall(RequestBody1 req * @return ApiResponse<ReportingV3ReportsIdGet200Response> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body */ - public ApiResponse createReport(RequestBody1 requestBody) throws ApiException { - return createReportWithHttpInfo(requestBody); + public void createReport(RequestBody1 requestBody) throws ApiException { + createReportWithHttpInfo(requestBody); } /** @@ -139,9 +148,9 @@ public ApiResponse createReport(RequestBody1 * @return ApiResponse<ReportingV3ReportsIdGet200Response> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body */ - public ApiResponse createReportWithHttpInfo(RequestBody1 requestBody) throws ApiException { + public void createReportWithHttpInfo(RequestBody1 requestBody) throws ApiException { com.squareup.okhttp.Call call = createReportValidateBeforeCall(requestBody, null, null); - return apiClient.execute(call); + apiClient.execute(call); } /** @@ -190,8 +199,7 @@ public com.squareup.okhttp.Call getReportByReportIdCall(String reportId, String Object localVarPostBody = null; // create path and map variables - String localVarPath = "/reporting/v3/reports/{reportId}" - .replaceAll("\\{" + "reportId" + "\\}", apiClient.escapeString(reportId.toString())); + String localVarPath = "/reporting/v3/reports/{reportId}".replaceAll("\\{" + "reportId" + "\\}", apiClient.escapeString(reportId.toString())); List localVarQueryParams = new ArrayList(); if (organizationId != null) @@ -329,7 +337,8 @@ public com.squareup.okhttp.Call searchReportsCall(DateTime startTime, DateTime e Object localVarPostBody = null; // create path and map variables - String localVarPath = "/reporting/v3/reports?startTime="+startTime.toString()+"&endTime="+endTime.toString()+"&timeQueryType="+timeQueryType+"&organizationId="+organizationId; + String localVarPath = "/reporting/v3/reports"; + List localVarQueryParams = new ArrayList(); @@ -337,6 +346,25 @@ public com.squareup.okhttp.Call searchReportsCall(DateTime startTime, DateTime e Map localVarHeaderParams = new HashMap(); Map localVarFormParams = new HashMap(); + + if (organizationId != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "organizationId", organizationId)); + if (startTime != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "startTime", startTime)); + if (endTime != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "endTime", endTime)); + if (timeQueryType != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "timeQueryType", timeQueryType)); + if (reportMimeType != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "reportMimeType", reportMimeType)); + if (reportFrequency != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "reportFrequency", reportFrequency)); + if (reportName != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "reportName", reportName)); + if (reportDefinitionId != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "reportDefinitionId", reportDefinitionId)); + if (reportStatus != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "reportStatus", reportStatus)); final String[] localVarAccepts = { "application/hal+json" diff --git a/src/main/java/Api/ReversalApi.java b/src/main/java/Api/ReversalApi.java index 53e4c8ffc..8af4bbddd 100644 --- a/src/main/java/Api/ReversalApi.java +++ b/src/main/java/Api/ReversalApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -39,6 +40,11 @@ public class ReversalApi { public ReversalApi() { this(Configuration.getDefaultApiClient()); } + + public ReversalApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public ReversalApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/SearchTransactionsApi.java b/src/main/java/Api/SearchTransactionsApi.java index 6b7d8b554..e4509b5f4 100644 --- a/src/main/java/Api/SearchTransactionsApi.java +++ b/src/main/java/Api/SearchTransactionsApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -39,6 +40,11 @@ public class SearchTransactionsApi { public SearchTransactionsApi() { this(Configuration.getDefaultApiClient()); } + + public SearchTransactionsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public SearchTransactionsApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -198,11 +204,11 @@ public com.squareup.okhttp.Call getSearchCall(String id, final ProgressResponseB Map localVarFormParams = new HashMap(); - /* final String[] localVarAccepts = { - "application/json;charset=utf-8" + final String[] localVarAccepts = { + "" }; final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts); - if (localVarAccept != null) localVarHeaderParams.put("Accept", localVarAccept);*/ + if (localVarAccept != null) localVarHeaderParams.put("Accept", localVarAccept); final String[] localVarContentTypes = { "application/json" diff --git a/src/main/java/Api/SecureFileShareApi.java b/src/main/java/Api/SecureFileShareApi.java index 7a07c7052..cde620d55 100644 --- a/src/main/java/Api/SecureFileShareApi.java +++ b/src/main/java/Api/SecureFileShareApi.java @@ -22,6 +22,7 @@ import org.joda.time.LocalDate; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public class SecureFileShareApi { public SecureFileShareApi() { this(Configuration.getDefaultApiClient()); } + + public SecureFileShareApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public SecureFileShareApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/TransactionBatchApi.java b/src/main/java/Api/TransactionBatchApi.java index 81e9dc798..9262b9477 100644 --- a/src/main/java/Api/TransactionBatchApi.java +++ b/src/main/java/Api/TransactionBatchApi.java @@ -14,13 +14,12 @@ package Api; import java.io.IOException; -import java.lang.reflect.Type; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import com.google.gson.reflect.TypeToken; +import com.cybersource.authsdk.core.MerchantConfig; import Invokers.ApiCallback; import Invokers.ApiClient; @@ -30,7 +29,6 @@ import Invokers.Pair; import Invokers.ProgressRequestBody; import Invokers.ProgressResponseBody; -import Model.PtsV1TransactionBatchesGet200Response; public class TransactionBatchApi { private ApiClient apiClient; @@ -38,6 +36,11 @@ public class TransactionBatchApi { public TransactionBatchApi() { this(Configuration.getDefaultApiClient()); } + + public TransactionBatchApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public TransactionBatchApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -125,8 +128,8 @@ private com.squareup.okhttp.Call ptsV1TransactionBatchesIdGetValidateBeforeCall( * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @return ApiResponse<Void> */ - public ApiResponse ptsV1TransactionBatchesIdGet(String id) throws ApiException { - return ptsV1TransactionBatchesIdGetWithHttpInfo(id); + public void ptsV1TransactionBatchesIdGet(String id) throws ApiException { + ptsV1TransactionBatchesIdGetWithHttpInfo(id); } /** @@ -136,10 +139,9 @@ public ApiResponse ptsV1TransactionBatche * @return ApiResponse<Void> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body */ - public ApiResponse ptsV1TransactionBatchesIdGetWithHttpInfo(String id) throws ApiException { + public ApiResponse ptsV1TransactionBatchesIdGetWithHttpInfo(String id) throws ApiException { com.squareup.okhttp.Call call = ptsV1TransactionBatchesIdGetValidateBeforeCall(id, null, null); - Type localVarReturnType = new TypeToken(){}.getType(); - return apiClient.execute(call, localVarReturnType); + return apiClient.execute(call, null); } /** diff --git a/src/main/java/Api/TransactionBatchesApi.java b/src/main/java/Api/TransactionBatchesApi.java index 449c1266b..8f1deb30b 100644 --- a/src/main/java/Api/TransactionBatchesApi.java +++ b/src/main/java/Api/TransactionBatchesApi.java @@ -22,6 +22,7 @@ import org.joda.time.DateTime; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -40,6 +41,11 @@ public class TransactionBatchesApi { public TransactionBatchesApi() { this(Configuration.getDefaultApiClient()); } + + public TransactionBatchesApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public TransactionBatchesApi(ApiClient apiClient) { this.apiClient = apiClient; @@ -66,10 +72,16 @@ public com.squareup.okhttp.Call ptsV1TransactionBatchesGetCall(DateTime startTim Object localVarPostBody = null; // create path and map variables - String localVarPath = "/pts/v1/transaction-batches?startTime="+startTime.toString()+"&endTime="+endTime.toString(); + String localVarPath = "/pts/v1/transaction-batches"; + List localVarQueryParams = new ArrayList(); + if (startTime != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "startTime", startTime)); + if (endTime != null) + localVarQueryParams.addAll(apiClient.parameterToPairs("", "endTime", endTime)); + Map localVarHeaderParams = new HashMap(); Map localVarFormParams = new HashMap(); diff --git a/src/main/java/Api/TransactionDetailsApi.java b/src/main/java/Api/TransactionDetailsApi.java index 381c327bf..f12f495a2 100644 --- a/src/main/java/Api/TransactionDetailsApi.java +++ b/src/main/java/Api/TransactionDetailsApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -38,6 +39,11 @@ public class TransactionDetailsApi { public TransactionDetailsApi() { this(Configuration.getDefaultApiClient()); } + + public TransactionDetailsApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public TransactionDetailsApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/UserManagementApi.java b/src/main/java/Api/UserManagementApi.java index ea84d7ca0..909d7e9e5 100644 --- a/src/main/java/Api/UserManagementApi.java +++ b/src/main/java/Api/UserManagementApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -38,6 +39,11 @@ public class UserManagementApi { public UserManagementApi() { this(Configuration.getDefaultApiClient()); } + + public UserManagementApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public UserManagementApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Api/VoidApi.java b/src/main/java/Api/VoidApi.java index 288493109..146ff3906 100644 --- a/src/main/java/Api/VoidApi.java +++ b/src/main/java/Api/VoidApi.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Map; +import com.cybersource.authsdk.core.MerchantConfig; import com.google.gson.reflect.TypeToken; import Invokers.ApiCallback; @@ -42,6 +43,11 @@ public class VoidApi { public VoidApi() { this(Configuration.getDefaultApiClient()); } + + public VoidApi(MerchantConfig merchantConfig) { + apiClient=Configuration.getDefaultApiClient(); + apiClient.setMerchantConfig(merchantConfig); + } public VoidApi(ApiClient apiClient) { this.apiClient = apiClient; diff --git a/src/main/java/Invokers/ApiClient.java b/src/main/java/Invokers/ApiClient.java index 76e53b1bf..b53f2cd5e 100644 --- a/src/main/java/Invokers/ApiClient.java +++ b/src/main/java/Invokers/ApiClient.java @@ -21,7 +21,6 @@ import java.net.URLEncoder; import java.security.GeneralSecurityException; import java.security.KeyStore; -import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.security.cert.Certificate; import java.security.cert.CertificateException; @@ -60,6 +59,7 @@ import com.cybersource.authsdk.payloaddigest.PayloadDigest; import com.cybersource.authsdk.util.GlobalLabelParameters; import com.cybersource.authsdk.util.PropertiesUtil; +import com.cybersource.authsdk.util.Utility; import com.squareup.okhttp.Call; import com.squareup.okhttp.Callback; import com.squareup.okhttp.FormEncodingBuilder; @@ -78,6 +78,7 @@ import Invokers.auth.Authentication; import Invokers.auth.HttpBasicAuth; import Invokers.auth.OAuth; +import masking.Masking; import okio.BufferedSink; import okio.Okio; @@ -85,12 +86,14 @@ public class ApiClient { public static final double JAVA_VERSION; public static final boolean IS_ANDROID; public static final int ANDROID_SDK_VERSION; - public static String responseCode; - public static String status; - public static String responseBody; - public static String respBody; - public static MerchantConfig merchantConfig; - + private String responseCode; + private String status; + private String responseBody; + private String respBody; + private MerchantConfig merchantConfig; + private String responseHeader; + private String requestHeader; + private String requestBody; static { JAVA_VERSION = Double.parseDouble(System.getProperty("java.specification.version")); boolean isAndroid; @@ -143,6 +146,8 @@ public class ApiClient { private JSON json; private HttpLoggingInterceptor loggingInterceptor; + + private Logger logger; /* * Constructor for ApiClient @@ -180,7 +185,6 @@ public ApiClient() { public ApiClient(MerchantConfig merchantConfig) { this.merchantConfig = merchantConfig; - } /** @@ -873,11 +877,13 @@ public String escapeString(String str) { */ @SuppressWarnings("unchecked") public T deserialize(Response response, Type returnType) throws ApiException { + if (response == null /* || returnType == null */) { return null; } if (returnType == null && response != null) { try { + getRequiredValue(response); return (T) response.body().bytes(); } catch (IOException e) { throw new ApiException(e); @@ -897,10 +903,7 @@ public T deserialize(Response response, Type returnType) throws ApiException } try { - if (response.body() != null) - respBody = response.body().string(); - else - respBody = null; + getRequiredValue(response); } catch (IOException e) { throw new ApiException(e); } @@ -908,7 +911,7 @@ public T deserialize(Response response, Type returnType) throws ApiException if (respBody == null || "".equals(respBody)) { return null; } - + String contentType = response.headers().get("Content-Type"); if (contentType == null) { // ensuring a default content type @@ -1066,19 +1069,28 @@ public ApiResponse execute(Call call, Type returnType) throws ApiExceptio || headerType.equals("application/pdf")) { responseBody = response.body().string(); } + if (!(responseCode.equals("200"))) { if (!responseCode.equals("201")) { - System.out.println(response.body().string()); + getRequiredValue(response); } } - T data = handleResponse(response, returnType); + if (headerType != null) if (!headerType.equals("application/xml") && !headerType.equals("text/csv") && !headerType.equals("application/pdf")) { responseBody = response.toString(); } + + T data = handleResponse(response, returnType); return new ApiResponse(response.code(), response.headers().toMultimap(), data); } catch (IOException e) { + respBody=null; + responseCode=null; + requestBody=null; + status=null; + throw new ApiException(e); + }catch(IllegalStateException e){ throw new ApiException(e); } } @@ -1176,7 +1188,8 @@ public T handleResponse(Response response, Type returnType) throws ApiExcept throw new ApiException(response.message(), response.code(), response.headers().toMultimap(), respBody); } } - + + /** * Build HTTP call with the given options. * @@ -1222,33 +1235,32 @@ public void callAuthenticationHeader(String method, String path, Object body, Li try { merchantConfig.setRequestType(method); - if (!queryParams.isEmpty()) { - + if (queryParams != null && !queryParams.isEmpty()) { + StringBuilder url = new StringBuilder(); + url.append(path); if (merchantConfig.getAuthenticationType().equalsIgnoreCase(GlobalLabelParameters.HTTP)) { - boolean firstQueryParam = true; - for (Pair pair : queryParams) { - - String key = pair.getName(); - String val = pair.getValue(); - val = val.replaceAll(" ", "%20"); - - if (!firstQueryParam) { - path = path + "&" + key + "=" + val; - } else { - path = path + "?" + key + "=" + val; - firstQueryParam = false; + // support (constant) query string in `path`, e.g. + // "/posts?draft=1" + String prefix = path.contains("?") ? "&" : "?"; + for (Pair param : queryParams) { + if (param.getValue() != null) { + if (prefix != null) { + url.append(prefix); + prefix = null; + } else { + url.append("&"); + } + String value = parameterToString(param.getValue()); + url.append(escapeString(param.getName())).append("=").append(escapeString(value)); } } - merchantConfig.setRequestTarget(path); - + merchantConfig.setRequestTarget(url.toString()); } } else { - merchantConfig.setRequestTarget(path); } - Authorization authorization = new Authorization(); - Logger logger = Log4j.getInstance(merchantConfig); + logger = Log4j.getInstance(merchantConfig); authorization.setLogger(logger); String requestBody = json.serialize(body); @@ -1256,21 +1268,24 @@ public void callAuthenticationHeader(String method, String path, Object body, Li authorization.setJWTRequestBody(requestBody); merchantConfig.setRequestJsonPath(GlobalLabelParameters.POST_OBJECT_METHOD_REQUEST_PATH); boolean isMerchantDetails = merchantConfig.validateMerchantDetails(logger); - + this.requestBody=requestBody; + String digest =null; if (isMerchantDetails) { String token = authorization.getToken(merchantConfig); + Utility.log(logger, GlobalLabelParameters.BEGIN_TRANSCATION, "", org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.AUTENTICATION_TYPE, merchantConfig.getAuthenticationType(), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.REQUEST_TYPE, ": ".concat(method), org.apache.logging.log4j.Level.INFO); if (merchantConfig.getAuthenticationType().equalsIgnoreCase(GlobalLabelParameters.HTTP)) { - + defaultHeaderMap.clear(); addDefaultHeader("Date", PropertiesUtil.date); addDefaultHeader("Host", merchantConfig.getRequestHost()); addDefaultHeader("v-c-merchant-id", merchantConfig.getMerchantID()); addDefaultHeader("Signature", token); - addDefaultHeader("User-Agent", "Mozilla/5.0"); - + addDefaultHeader("User-Agent", GlobalLabelParameters.USER_AGENT_VALUE); if (method.equalsIgnoreCase("POST") || method.equalsIgnoreCase("PUT") || method.equalsIgnoreCase("PATCH")) { PayloadDigest payloadDigest = new PayloadDigest(merchantConfig); - String digest = payloadDigest.getDigest(); + digest = payloadDigest.getDigest(); addDefaultHeader("Digest", digest); } @@ -1278,8 +1293,19 @@ public void callAuthenticationHeader(String method, String path, Object body, Li token = "Bearer " + token; addDefaultHeader("Authorization", token); } - } - + + String merchantConfigData="{"+"authenticationType="+ merchantConfig.getAuthenticationType() + ", logDirectory=" + merchantConfig.getLogDirectory() + ",logFilename=" + merchantConfig.getLogFilename() + ",keysDirectory=" + merchantConfig.getKeysDirectory() + ",keyFileName="+merchantConfig.getKeyFilename()+", enableLog=" + merchantConfig.getEnableLog()+ ", runEnvironment=runenviornment, requestHost=" + merchantConfig.getRequestHost() +", requestTarget=" + merchantConfig.getRequestTarget() +", requestType=" + merchantConfig.getRequestType()+"}"; + Utility.log(logger, GlobalLabelParameters.MERCHANT_CONFIG, ": ".concat(merchantConfigData), org.apache.logging.log4j.Level.INFO); + if (digest != null) { + Utility.log(logger, GlobalLabelParameters.DIGEST, ": ".concat(digest), + org.apache.logging.log4j.Level.INFO); + } + Utility.log(logger, GlobalLabelParameters.V_C_MERCHANTID, ": ".concat(merchantConfig.getMerchantID()), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.DATE, ": ".concat(PropertiesUtil.date), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.HOST, ": ".concat(merchantConfig.getRequestHost()), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.SIGNATURE, ": ".concat(token), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.USERAGENT, ": ".concat(GlobalLabelParameters.USER_AGENT_VALUE), org.apache.logging.log4j.Level.INFO); + } } catch (ConfigException e) { System.out.println(e.getMessage()); } @@ -1352,7 +1378,6 @@ public Request buildRequest(String path, String method, List queryParams, } else { request = reqBuilder.method(method, reqBody).build(); } - return request; } @@ -1369,7 +1394,6 @@ public Request buildRequest(String path, String method, List queryParams, public String buildUrl(String path, List queryParams) { final StringBuilder url = new StringBuilder(); url.append(GlobalLabelParameters.URL_PREFIX).append(merchantConfig.getRequestHost()).append(path); - if (queryParams != null && !queryParams.isEmpty()) { // support (constant) query string in `path`, e.g. "/posts?draft=1" String prefix = path.contains("?") ? "&" : "?"; @@ -1386,7 +1410,6 @@ public String buildUrl(String path, List queryParams) { } } } - return url.toString(); } @@ -1588,4 +1611,110 @@ private KeyStore newEmptyKeyStore(char[] password) throws GeneralSecurityExcepti throw new AssertionError(e); } } + + /** + * Set Response Header,body,requestHeader,Body from Response object to the Apiclient variables. + * do the masking for response body + * @param response + * @throws IOException + */ + private void getRequiredValue(Response response) throws IOException{ + String method=""; + if (response != null) { + responseHeader = response.headers().toString(); + if (response.request() != null) { + requestHeader = response.request().headers().toString(); + method=response.request().method(); + } + } + if (response.body() != null) + respBody=Masking.prepareMasking(response.body().string(),null); + else + respBody = null; + + if(requestBody!=null){ + requestBody=Masking.prepareMasking(requestBody,null); + } + Utility.log(logger, GlobalLabelParameters.REQUEST_BODY, ": ".concat(requestBody==null ? "" :requestBody), org.apache.logging.log4j.Level.INFO); + + if(respBody== null || ("null").equalsIgnoreCase(respBody)){ + Utility.log(logger, GlobalLabelParameters.RESPONSE_MESSAGE, ": ".concat(("DELETE").equals(method) ? "null":responseBody), org.apache.logging.log4j.Level.INFO); + }else{ + Utility.log(logger, GlobalLabelParameters.RESPONSE_MESSAGE, ": ".concat(respBody), org.apache.logging.log4j.Level.INFO); + } + + + Utility.log(logger, GlobalLabelParameters.RESPONSE_CODE, ": ".concat(responseCode), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.RESPONSE_HEADER, ": ".concat(responseHeader), org.apache.logging.log4j.Level.INFO); + Utility.log(logger, GlobalLabelParameters.END_TRANSCATION, ": ", org.apache.logging.log4j.Level.INFO); + + } + + public String getResponseCode() { + return responseCode; + } + + public void setResponseCode(String responseCode) { + this.responseCode = responseCode; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getResponseBody() { + return responseBody; + } + + public void setResponseBody(String responseBody) { + this.responseBody = responseBody; + } + + public String getRespBody() { + return respBody; + } + + public void setRespBody(String respBody) { + this.respBody = respBody; + } + + + public String getResponseHeader() { + return responseHeader; + } + + public void setResponseHeader(String responseHeader) { + this.responseHeader = responseHeader; + } + + public String getRequestHeader() { + return requestHeader; + } + + public void setRequestHeader(String requestHeader) { + this.requestHeader = requestHeader; + } + + public String getRequestBody() { + return requestBody; + } + + public void setRequestBody(String requestBody) { + this.requestBody = requestBody; + } + + public MerchantConfig getMerchantConfig() { + return merchantConfig; + } + + public void setMerchantConfig(MerchantConfig merchantConfig) { + this.merchantConfig = merchantConfig; + } + + + } diff --git a/src/main/java/masking/Masking.java b/src/main/java/masking/Masking.java new file mode 100644 index 000000000..67a0a02cc --- /dev/null +++ b/src/main/java/masking/Masking.java @@ -0,0 +1,71 @@ +package masking; + +import java.util.Map.Entry; + +import org.apache.logging.log4j.Logger; + +import com.cybersource.authsdk.util.GlobalLabelParameters; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.google.gson.JsonSyntaxException; + +/* + * This Class contains the logic for masking sensitive data. + */ +public class Masking { + + private static final JsonElement mask = new JsonParser().parse(GlobalLabelParameters.MASKING_PATTERN); + + /** + * @param json + * @param logger + * @return + */ + public static String prepareMasking(String json, Logger logger) { + /* Add the fields need to be masked in this list */ + String[] list = { "email", "cardNumber", "expirationDate", "expirationMonth", "cardType", "cardCode", + "nameOnAccount", "currency" }; + try { + JsonElement object = new JsonParser().parse(json); + // object.get + getChild(object, list); + return object.toString(); + } catch (JsonSyntaxException e) { + return json; + } + } + + /** + * + * @param json + * @param list + */ + private static void getChild(JsonElement json, String[] list) { + + if (json.isJsonObject()) { + JsonObject obj = (JsonObject) json; + mask(obj, list); + for (Entry entry : obj.entrySet()) { + getChild(entry.getValue(), list); + } + + } + + } + + /** + * @param obj + * @param list + */ + private static void mask(JsonObject obj, String[] list) { + + for (String current : list) { + /* masking field. */ + if (obj.has(current)) { + obj.add(current, mask); + } + } + } + +} \ No newline at end of file