package com.best.javaSdk; import java.util.HashMap; import java.util.Map; public class Client { private String url; private String partnerID; private String partnerKey; private String messageFormat; public Client(String url, String partnerID, String partnerKey, String messageFormat){ this.url = url; this.messageFormat = messageFormat; this.partnerID = partnerID; this.partnerKey = partnerKey; } public T executed(BaseRequest baseRequest) { String response = ""; Map params = new HashMap<>(); Map headers = new HashMap<>(); Param param = new Param(); param.setPartnerID(partnerID); param.setServiceType(baseRequest.obtainServiceType()); param.setBizData(makeBizData(baseRequest)); param.setPartnerKey(partnerKey); params.put("partnerID", param.getPartnerID()); params.put("serviceType", param.getServiceType()); params.put("bizData", param.getBizData()); params.put("sign", Sign.makeSign(param)); try { response = HttpService.sendPost(url, params, headers); } catch (Exception e) { e.printStackTrace(); } return response == null ? null : (T) baseRequest.makeResponse(response, messageFormat); } private String makeBizData(BaseRequest baseRequest) { if("xml".equalsIgnoreCase(this.messageFormat)) { return Parser.coverObject2Xml(baseRequest); } return Parser.convertObject2Json(baseRequest); } }