com.xcase.intapp.cdscm.impl.simple.methods.CreateMatterMethod Maven / Gradle / Ivy
package com.xcase.intapp.cdscm.impl.simple.methods;
import java.lang.invoke.MethodHandles;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.Header;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicHeader;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.xcase.common.impl.simple.core.CommonHttpResponse;
import com.xcase.common.utils.ConverterUtils;
import com.xcase.intapp.cdscm.factories.CDSCMResponseFactory;
import com.xcase.intapp.cdscm.transputs.CreateMatterRequest;
import com.xcase.intapp.cdscm.transputs.CreateMatterResponse;
public class CreateMatterMethod extends BaseCDSCMMethod {
/**
* log4j object.
*/
protected static final Logger LOGGER = LogManager.getLogger(MethodHandles.lookup().lookupClass());
public CreateMatterResponse createMatter(CreateMatterRequest request) {
LOGGER.debug("starting createMatter()");
CreateMatterResponse response = CDSCMResponseFactory.createCreateMatterResponse();
LOGGER.debug("created response");
try {
String baseVersionUrl = getAPIVersionUrl();
LOGGER.debug("baseVersionUrl is " + baseVersionUrl);
String clientId = request.getClientId();
LOGGER.debug("clientId is " + clientId);
String matterId = request.getMatterId();
LOGGER.debug("matterId is " + matterId);
String entityString = request.getEntityString();
endPoint = baseVersionUrl + request.getOperationPath();
endPoint = endPoint.replace("{clientId}", clientId);
String accessToken = request.getAccessToken();
LOGGER.debug("accessToken is " + accessToken);
Header authorizationHeader = createCDSCMAuthenticationTokenHeader(accessToken);
LOGGER.debug("created Authorization header");
Header acceptHeader = createAcceptHeader();
Header contentTypeHeader = createContentTypeHeader();
Header authenticationToken = new BasicHeader("IntegrateAuthenticationToken", accessToken);
Header[] headers = {acceptHeader, authenticationToken, authorizationHeader, contentTypeHeader};
List parameters = new ArrayList();
entityString = entityString.replace("{matterId}", matterId);
CommonHttpResponse commonHttpResponse = httpManager.doCommonHttpResponsePost(endPoint, headers, parameters, entityString, null);
int responseCode = commonHttpResponse.getResponseCode();
LOGGER.debug("responseCode is " + responseCode);
if (responseCode == request.getSuccessResponseCode()) {
handleExpectedResponseCode(response, commonHttpResponse);
} else {
handleUnexpectedResponseCode(response, commonHttpResponse);
}
} catch (Exception e) {
handleUnexpectedException(response, e);
}
return response;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy