![JAR search and dependency download from the Maven repository](/logo.png)
com.payu.sdk.api.Mobile Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of api-client Show documentation
Show all versions of api-client Show documentation
A fresh implementation of the PayU API Client for Android
The newest version!
package com.payu.sdk.api;
import com.payu.sdk.api.exceptions.AuthenticationException;
import com.payu.sdk.api.exceptions.HttpException;
import com.payu.sdk.api.exceptions.InvalidParametersException;
import com.payu.sdk.api.exceptions.NetworkException;
import com.payu.sdk.api.exceptions.PayUException;
import com.payu.sdk.api.model.CreditCard;
import com.payu.sdk.api.model.mobile.DeviceIdentifierResponse;
import com.payu.sdk.api.model.mobile.SenderIdResponse;
import java.util.List;
import java.util.Map;
import static com.payu.sdk.api.constants.Parameters.AUTHORIZE_PARAMS;
import static com.payu.sdk.api.constants.Parameters.REGISTER_PARAMS;
import static com.payu.sdk.api.constants.Resources.PATH_MOBILE_APPS_AUTHORIZE;
import static com.payu.sdk.api.constants.Resources.PATH_MOBILE_APPS_CREDIT_CARD;
import static com.payu.sdk.api.constants.Resources.PATH_MOBILE_APPS_REGISTER;
import static com.payu.sdk.api.constants.Resources.PATH_MOBILE_APPS_SENDER_ID;
import static com.payu.sdk.api.util.CallbackUtils.checkCallback;
import static com.payu.sdk.api.util.ParametersUtils.validateParameters;
public final class Mobile {
private final RawApi rawApi;
private final RequestCreator requestCreator;
Mobile(RawApi rawApi, RequestCreator requestCreator) {
this.rawApi = rawApi;
this.requestCreator = requestCreator;
}
void registerInstallation(Map parameters,
Callback callback) {
checkCallback(callback);
try {
callback.success(registerInstallation(parameters));
} catch (HttpException e) {
callback.httpError(e);
} catch (PayUException e) {
callback.callApiError(e);
} catch (NetworkException e) {
callback.networkError(e);
} catch (AuthenticationException e) {
callback.authenticationError(e);
} catch (InvalidParametersException e) {
callback.invalidParametersError(e);
}
}
void authorizeInstallation(Map parameters,
Callback callback) {
checkCallback(callback);
try {
callback.success(authorizeInstallation(parameters));
} catch (HttpException e) {
callback.httpError(e);
} catch (PayUException e) {
callback.callApiError(e);
} catch (NetworkException e) {
callback.networkError(e);
} catch (AuthenticationException e) {
callback.authenticationError(e);
} catch (InvalidParametersException e) {
callback.invalidParametersError(e);
}
}
void findDeviceTokens(Map parameters, Callback> callback) {
checkCallback(callback);
try {
callback.success(findDeviceTokens(parameters));
} catch (InvalidParametersException e) {
callback.invalidParametersError(e);
} catch (HttpException e) {
callback.httpError(e);
} catch (PayUException e) {
callback.callApiError(e);
} catch (NetworkException e) {
callback.networkError(e);
} catch (AuthenticationException e) {
callback.authenticationError(e);
}
}
void getSenderId(Callback callback) {
checkCallback(callback);
try {
callback.success(getSenderId());
} catch (HttpException e) {
callback.httpError(e);
} catch (PayUException e) {
callback.callApiError(e);
} catch (NetworkException e) {
callback.networkError(e);
} catch (AuthenticationException e) {
callback.authenticationError(e);
}
}
private DeviceIdentifierResponse registerInstallation(Map parameters)
throws HttpException, PayUException, NetworkException, AuthenticationException,
InvalidParametersException {
validateParameters(parameters, REGISTER_PARAMS);
return rawApi.mobileServices()
.registerInstallation(PATH_MOBILE_APPS_REGISTER,
requestCreator.buildDeviceIdentifierRequest(parameters));
}
private DeviceIdentifierResponse authorizeInstallation(Map parameters)
throws HttpException, PayUException, NetworkException, AuthenticationException,
InvalidParametersException {
validateParameters(parameters, AUTHORIZE_PARAMS);
return rawApi.mobileServices()
.authorizeInstallation(PATH_MOBILE_APPS_AUTHORIZE,
requestCreator.buildDeviceAuthorizationRequest(parameters));
}
private List findDeviceTokens(Map parameters)
throws InvalidParametersException, HttpException, PayUException, NetworkException,
AuthenticationException {
validateParameters(parameters, AUTHORIZE_PARAMS);
return rawApi.mobileServices()
.findDeviceTokens(PATH_MOBILE_APPS_CREDIT_CARD,
requestCreator.buildDeviceAuthorizationRequest(parameters))
.getCreditCardList();
}
private SenderIdResponse getSenderId()
throws HttpException, PayUException, NetworkException, AuthenticationException {
return rawApi.mobileServices().getSenderId(PATH_MOBILE_APPS_SENDER_ID);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy