2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.ci.tests.utils.rest;
23 import org.json.simple.JSONObject;
24 import org.openecomp.sdc.be.datatypes.enums.AssetTypeEnum;
25 import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
26 import org.openecomp.sdc.be.model.*;
27 import org.openecomp.sdc.ci.tests.api.Urls;
28 import org.openecomp.sdc.ci.tests.config.Config;
29 import org.openecomp.sdc.ci.tests.datatypes.ProductReqDetails;
30 import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
31 import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails;
32 import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum;
33 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
34 import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum;
35 import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest;
36 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
37 import org.openecomp.sdc.ci.tests.utils.Utils;
38 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
39 import org.slf4j.Logger;
40 import org.slf4j.LoggerFactory;
42 import java.io.FileNotFoundException;
43 import java.io.IOException;
44 import java.util.HashMap;
47 public class LifecycleRestUtils extends BaseRestUtils {
48 private static Logger logger = LoggerFactory.getLogger(LifecycleRestUtils.class.getName());
49 public static final String COMMENT = "comment";
52 public static RestResponse checkInResource(String resourceUUID, User sdncModifierDetails) throws IOException {
53 String comment = "Chekin resource: " + resourceUUID;
54 return changeLifeCycleOfAsset(resourceUUID, AssetTypeEnum.RESOURCES, LifeCycleStatesEnum.CHECKIN, sdncModifierDetails, comment);
57 public static RestResponse checkInService(String serviceUUID, User sdncModifierDetails) throws IOException {
58 String comment = "Chekin service: " + serviceUUID;
59 return changeLifeCycleOfAsset(serviceUUID, AssetTypeEnum.SERVICES, LifeCycleStatesEnum.CHECKIN, sdncModifierDetails, comment);
62 public static RestResponse checkOutResource(String resourceUUID, User sdncModifierDetails) throws IOException {
63 String comment = "CheckOut resource: " + resourceUUID;
64 return changeLifeCycleOfAsset(resourceUUID, AssetTypeEnum.RESOURCES, LifeCycleStatesEnum.CHECKOUT, sdncModifierDetails, comment);
67 public static RestResponse checkOutService(String serviceUUID, User sdncModifierDetails) throws IOException {
68 String comment = "CheckOut service: " + serviceUUID;
69 return changeLifeCycleOfAsset(serviceUUID, AssetTypeEnum.SERVICES, LifeCycleStatesEnum.CHECKOUT, sdncModifierDetails, comment);
72 public static RestResponse certificationRequestService(String serviceUUID, User sdncModifierDetails) throws IOException {
73 String comment = "Certification request service: " + serviceUUID;
74 return changeLifeCycleOfAsset(serviceUUID, AssetTypeEnum.SERVICES, LifeCycleStatesEnum.CERTIFICATIONREQUEST, sdncModifierDetails, comment);
77 /*public static RestResponse certificationRequestResource(String resourceUUID, User sdncModifierDetails) throws IOException {
78 String comment = "Certification request resource: " + resourceUUID;
79 return changeLifeCycleOfAsset(resourceUUID, AssetTypeEnum.RESOURCES, LifeCycleStatesEnum.CERTIFICATIONREQUEST, sdncModifierDetails, comment);
82 public static RestResponse startTestingService(String serviceUUID, User sdncModifierDetails) throws IOException {
83 String comment = "Start testing request service: " + serviceUUID;
84 return changeLifeCycleOfAsset(serviceUUID, AssetTypeEnum.SERVICES, LifeCycleStatesEnum.STARTCERTIFICATION, sdncModifierDetails, comment);
87 public static RestResponse startTestingResource(String resourceUUID, User sdncModifierDetails) throws IOException {
88 String comment = "Start testing request resource: " + resourceUUID;
89 return changeLifeCycleOfAsset(resourceUUID, AssetTypeEnum.RESOURCES, LifeCycleStatesEnum.STARTCERTIFICATION, sdncModifierDetails, comment);
92 public static RestResponse certifyService(String serviceUUID, User sdncModifierDetails) throws IOException {
93 String comment = "Certify request service: " + serviceUUID;
94 return changeLifeCycleOfAsset(serviceUUID, AssetTypeEnum.SERVICES, LifeCycleStatesEnum.CERTIFY, sdncModifierDetails, comment);
97 public static RestResponse certifyResource(String resourceUUID, User sdncModifierDetails) throws IOException {
98 String comment = "Certify request resource: " + resourceUUID;
99 return changeLifeCycleOfAsset(resourceUUID, AssetTypeEnum.RESOURCES, LifeCycleStatesEnum.CERTIFY, sdncModifierDetails, comment);
106 private static RestResponse changeLifeCycleOfAsset(String assetUUID, AssetTypeEnum assetTypeEnum, LifeCycleStatesEnum lifeCycleStatesEnum, User sdncModifierDetails, String comment) throws IOException {
107 Config config = Utils.getConfig();
108 String url = String.format(Urls.POST_EXTERNAL_API_CHANGE_LIFE_CYCLE_OF_ASSET, config.getCatalogBeHost(), config.getCatalogBePort(), assetTypeEnum.getValue(), assetUUID, lifeCycleStatesEnum.getState());
110 Map<String, String> additionalHeaders = new HashMap<>();
112 additionalHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader);
113 additionalHeaders.put(HttpHeaderEnum.X_ECOMP_INSTANCE_ID.getValue(), BaseRestUtils.xEcompInstanceId);
115 String jsonBody = "{\"userRemarks\": \"" + comment + "\"}";
117 RestResponse res = sendPost(url, jsonBody, sdncModifierDetails.getUserId(), acceptHeaderData, additionalHeaders);
122 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
124 public static RestResponse changeResourceState(ResourceReqDetails resourceDetails, User sdncModifierDetails,
125 String version, LifeCycleStatesEnum LifeCycleStatesEnum) throws IOException {
126 return changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum,
127 createLifecycleCommentJson(COMMENT));
130 public static RestResponse changeResourceState(ResourceReqDetails resourceDetails, User sdncModifierDetails,
131 String version, LifeCycleStatesEnum LifeCycleStatesEnum, String LifecycleChangeInfo) throws IOException {
133 return changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum, LifecycleChangeInfo);
137 public static RestResponse changeResourceState(ResourceReqDetails resourceDetails, User sdncModifierDetails,
138 LifeCycleStatesEnum LifeCycleStatesEnum) throws IOException {
140 return changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum,
141 createLifecycleCommentJson(COMMENT));
145 public static RestResponse changeResourceState(ResourceReqDetails resourceDetails, String modifierUserId,
146 LifeCycleStatesEnum LifeCycleStatesEnum) throws IOException {
147 User user = new User();
148 user.setUserId(modifierUserId);
149 return changeResourceState(resourceDetails, user, LifeCycleStatesEnum, createLifecycleCommentJson(COMMENT));
152 private static RestResponse changeResourceState(ResourceReqDetails resourceDetails, User sdncModifierDetails,
153 LifeCycleStatesEnum LifeCycleStatesEnum, String LifecycleChangeInfo) throws IOException {
154 Config config = Utils.getConfig();
155 String url = String.format(Urls.CHANGE_RESOURCE_LIFECYCLE_STATE, config.getCatalogBeHost(),
156 config.getCatalogBePort(), resourceDetails.getUniqueId(), LifeCycleStatesEnum);
157 // System.out.println("url: " + url);
159 RestResponse LifeCycleStatesEnumResourceResponse = sendPost(url, LifecycleChangeInfo,
160 sdncModifierDetails.getUserId(), acceptHeaderData);
161 if (LifeCycleStatesEnumResourceResponse.getErrorCode() == STATUS_CODE_SUCCESS) {
162 String stateFromJsonResponse = ResponseParser
163 .getValueFromJsonResponse(LifeCycleStatesEnumResourceResponse.getResponse(), "lifecycleState");
164 resourceDetails.setVersion(ResponseParser.getVersionFromResponse(LifeCycleStatesEnumResourceResponse));
165 resourceDetails.setUniqueId(ResponseParser.getUniqueIdFromResponse(LifeCycleStatesEnumResourceResponse));
166 if (stateFromJsonResponse != null) {
167 resourceDetails.setLifecycleState(LifecycleStateEnum.valueOf(stateFromJsonResponse));
170 return LifeCycleStatesEnumResourceResponse;
173 public static RestResponse changeServiceState(ServiceReqDetails serviceDetails, User sdncModifierDetails,
174 String version, LifeCycleStatesEnum LifeCycleStatesEnum) throws Exception {
176 return changeServiceState(serviceDetails, sdncModifierDetails, version, LifeCycleStatesEnum,
177 createLifecycleCommentJson(COMMENT));
181 public static RestResponse changeServiceState(ServiceReqDetails serviceDetails, User sdncModifierDetails,
182 LifeCycleStatesEnum LifeCycleStatesEnum) throws Exception {
184 return changeServiceState(serviceDetails, sdncModifierDetails, null, LifeCycleStatesEnum,
185 createLifecycleCommentJson(COMMENT));
189 public static RestResponse changeServiceState(ServiceReqDetails serviceDetails, User sdncModifierDetails,
190 LifeCycleStatesEnum LifeCycleStatesEnum, String lifecycleChangeInfo) throws Exception {
192 return changeServiceState(serviceDetails, sdncModifierDetails, null, LifeCycleStatesEnum,
193 lifecycleChangeInfo);
197 public static RestResponse changeServiceState(ServiceReqDetails serviceDetails, User sdncModifierDetails,
198 String version, LifeCycleStatesEnum LifeCycleStatesEnum, String lifecycleChangeInfo) throws Exception {
200 Config config = Utils.getConfig();
201 Map<String, String> headersMap = prepareHeadersMap(sdncModifierDetails);
202 HttpRequest http = new HttpRequest();
203 String url = String.format(Urls.CHANGE_SERVICE_LIFECYCLE_STATE, config.getCatalogBeHost(),
204 config.getCatalogBePort(), serviceDetails.getUniqueId(), LifeCycleStatesEnum);
205 // System.out.println("url: " + url);
206 RestResponse LifeCycleStatesEnumServiceResponse = http.httpSendPost(url, lifecycleChangeInfo, headersMap);
207 if (LifeCycleStatesEnumServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS) {
208 String serviceUniqueId = ResponseParser
209 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "uniqueId");
210 serviceDetails.setUniqueId(serviceUniqueId);
211 String serviceVersion = ResponseParser
212 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "version");
213 serviceDetails.setVersion(serviceVersion);
214 String stateFromJsonResponse = ResponseParser
215 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "lifecycleState");
216 serviceDetails.setLifecycleState(LifecycleStateEnum.valueOf(stateFromJsonResponse));
218 return LifeCycleStatesEnumServiceResponse;
221 public static RestResponse changeProductState(Product product, User sdncModifierDetails,
222 LifeCycleStatesEnum LifeCycleStatesEnum, String lifecycleChangeInfo) throws Exception {
224 return _changeProductState(product, sdncModifierDetails, LifeCycleStatesEnum, lifecycleChangeInfo);
228 public static RestResponse changeProductState(Product product, User sdncModifierDetails,
229 LifeCycleStatesEnum LifeCycleStatesEnum) throws Exception {
231 return _changeProductState(product, sdncModifierDetails, LifeCycleStatesEnum, COMMENT);
235 public static RestResponse changeProductState(ProductReqDetails productDetails, User sdncModifierDetails,
236 LifeCycleStatesEnum LifeCycleStatesEnum) throws Exception {
237 Config config = Utils.getConfig();
238 String url = String.format(Urls.CHANGE_PRODUCT_LIFECYCLE_STATE, config.getCatalogBeHost(),
239 config.getCatalogBePort(), productDetails.getUniqueId(), LifeCycleStatesEnum);
240 RestResponse LifeCycleStatesEnumServiceResponse = sendPost(url, createLifecycleCommentJson(COMMENT),
241 sdncModifierDetails.getUserId(), acceptHeaderData);
242 if (LifeCycleStatesEnumServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS) {
243 String productUniqueId = ResponseParser
244 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "uniqueId");
245 productDetails.setUniqueId(productUniqueId);
246 String productVersion = ResponseParser
247 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "version");
248 productDetails.setVersion(productVersion);
249 String newLifecycleState = ResponseParser
250 .getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "lifecycleState");
251 productDetails.setLifecycleState(LifecycleStateEnum.valueOf(newLifecycleState));
253 return LifeCycleStatesEnumServiceResponse;
257 public static RestResponse changeComponentState(Component component, User sdncModifierDetails,
258 LifeCycleStatesEnum LifeCycleStatesEnum) throws Exception {
259 Config config = Utils.getConfig();
260 String url = String.format(Urls.CHANGE_COMPONENT_LIFECYCLE_STATE, config.getCatalogBeHost(),
261 config.getCatalogBePort(), ComponentTypeEnum.findParamByType(component.getComponentType()), component.getUniqueId(), LifeCycleStatesEnum);
262 RestResponse LifeCycleStatesEnumServiceResponse = sendPost(url, createLifecycleCommentJson(COMMENT), sdncModifierDetails.getUserId(), acceptHeaderData);
263 if (LifeCycleStatesEnumServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS) {
264 String productUniqueId = ResponseParser.getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "uniqueId");
265 component.setUniqueId(productUniqueId);
266 String productVersion = ResponseParser.getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "version");
267 component.setVersion(productVersion);
268 String newLifecycleState = ResponseParser.getValueFromJsonResponse(LifeCycleStatesEnumServiceResponse.getResponse(), "lifecycleState");
269 component.setLifecycleState(LifecycleStateEnum.valueOf(newLifecycleState));
271 return LifeCycleStatesEnumServiceResponse;
275 public static RestResponse certifyResource(ResourceReqDetails resourceDetails) throws Exception {
277 User designer = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
278 RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails,
279 ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN);
280 // if (restResponseResource.getErrorCode() == 200){
281 /* restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails,
282 ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
284 // return restResponseResource;
285 User testerDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER);
286 if (restResponseResource.getErrorCode() == 200) {
287 restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, testerDetails,
288 LifeCycleStatesEnum.STARTCERTIFICATION);
290 return restResponseResource;*/
291 if (restResponseResource.getErrorCode() == 200) {
292 restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, designer,
293 LifeCycleStatesEnum.CERTIFY);
294 if (restResponseResource.getErrorCode() == 200) {
295 String newVersion = ResponseParser.getVersionFromResponse(restResponseResource);
296 resourceDetails.setVersion(newVersion);
297 resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED);
298 resourceDetails.setLastUpdaterUserId(designer.getUserId());
299 resourceDetails.setLastUpdaterFullName(designer.getFullName());
300 String uniqueIdFromRresponse = ResponseParser.getUniqueIdFromResponse(restResponseResource);
301 resourceDetails.setUniqueId(uniqueIdFromRresponse);
304 return restResponseResource;
307 public static RestResponse certifyService(ServiceReqDetails serviceDetails) throws Exception {
308 RestResponse restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails,
309 ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN);
310 // if (restResponseService.getErrorCode() == 200){
311 restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails,
312 ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
314 // return restResponseService;
315 if (restResponseService.getErrorCode() == 200) {
316 restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails,
317 ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION);
319 return restResponseService;
320 if (restResponseService.getErrorCode() == 200) {
321 User testerDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER);
322 restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails, testerDetails,
323 LifeCycleStatesEnum.CERTIFY);
324 if (restResponseService.getErrorCode() == 200) {
325 String newVersion = ResponseParser.getVersionFromResponse(restResponseService);
326 serviceDetails.setVersion(newVersion);
327 serviceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED);
328 serviceDetails.setLastUpdaterUserId(testerDetails.getUserId());
329 serviceDetails.setLastUpdaterFullName(testerDetails.getFullName());
330 String uniqueIdFromRresponse = ResponseParser.getUniqueIdFromResponse(restResponseService);
331 serviceDetails.setUniqueId(uniqueIdFromRresponse);
334 return restResponseService;
337 private static RestResponse _changeProductState(Product product, User sdncModifierDetails,
338 LifeCycleStatesEnum LifeCycleStatesEnum, String lifecycleChangeInfo) throws Exception {
340 Config config = Utils.getConfig();
341 String url = String.format(Urls.CHANGE_PRODUCT_LIFECYCLE_STATE, config.getCatalogBeHost(),
342 config.getCatalogBePort(), product.getUniqueId(), LifeCycleStatesEnum);
343 RestResponse LifeCycleStatesEnumServiceResponse = sendPost(url, createLifecycleCommentJson(lifecycleChangeInfo),
344 sdncModifierDetails.getUserId(), acceptHeaderData);
346 return LifeCycleStatesEnumServiceResponse;
349 public static String createLifecycleCommentJson(String commentContent) {
351 if (commentContent != null) {
352 res = "{\"userRemarks\": \"" + commentContent + "\"}";
357 public static void checkLCS_Response(RestResponse response) {
358 checkStatusCode(response, "change lifecycle request failed", false, STATUS_CODE_SUCCESS);
361 private static Map<String, String> prepareHeadersMap(User sdncModifierDetails) {
362 Map<String, String> headersMap = new HashMap<>();
363 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
364 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
365 headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId());
369 public static RestResponse changeDistributionStatus(ServiceReqDetails serviceDetails, String version, User user,
370 String userRemarks, DistributionStatusEnum reqDistributionStatus) throws Exception {
371 String uniqueId = serviceDetails.getUniqueId();
372 Config config = Utils.getConfig();
373 String environmentName = "AUTO";
374 // String environmentName = ConfigurationManager.getConfigurationManager().getDistributionEngineConfiguration().getEnvironments().get(0);
375 DistributionStatusEnum distributionStatusEnum = DistributionStatusEnum.findState(reqDistributionStatus.getValue());
376 switch(distributionStatusEnum){
378 String url = String.format(Urls.ACTIVATE_DISTRIBUTION, config.getCatalogBeHost(), config.getCatalogBePort(), uniqueId, environmentName);
379 return sendDistrState(user, userRemarks, url);
385 // if (reqDistributionStatus == DistributionStatusEnum.DISTRIBUTION_APPROVED) {
386 // return sendApproveDistribution(user, uniqueId, userRemarks);
387 // } else if (reqDistributionStatus == DistributionStatusEnum.DISTRIBUTION_REJECTED) {
388 // return rejectDistribution(user, userRemarks, uniqueId);
389 // } else if (reqDistributionStatus == DistributionStatusEnum.DISTRIBUTED) {
390 // Config config = Utils.getConfig();
392 // // String.format("http://%s:%s/sdc2/rest/v1/catalog/services/%s/tempUrlToBeDeleted",
393 // // config.getCatalogBeHost(), config.getCatalogBePort(), uniqueId);
394 // String url = String.format(Urls.ACTIVATE_DISTRIBUTION, config.getCatalogBeHost(), config.getCatalogBePort(),
395 // uniqueId, "PROD");
396 // return sendDistrState(user, userRemarks, url);
402 public static RestResponse sendApproveDistribution(User sdncModifierDetails, String uniqueId, String userRemarks)
403 throws FileNotFoundException, IOException {
404 Config config = Utils.getConfig();
405 String url = String.format(Urls.APPROVE_DISTRIBUTION, config.getCatalogBeHost(), config.getCatalogBePort(),
407 return sendDistrState(sdncModifierDetails, userRemarks, url);
410 public static RestResponse rejectDistribution(ServiceReqDetails serviceDetails, String version, User user,
411 String userRemarks) throws Exception {
412 return rejectDistribution(user, userRemarks, serviceDetails.getUniqueId());
415 public static RestResponse rejectDistribution(User user, String userRemarks, String uniqueId)
416 throws FileNotFoundException, IOException {
417 Config config = Utils.getConfig();
418 String url = String.format(Urls.REJECT_DISTRIBUTION, config.getCatalogBeHost(), config.getCatalogBePort(),
420 return sendDistrState(user, userRemarks, url);
423 private static RestResponse sendDistrState(User user, String userRemarks, String url) throws IOException {
424 Map<String, String> headersMap = prepareHeadersMap(user);
425 Map<String, String> userRemarksMap = new HashMap<String, String>();
426 userRemarksMap.put("userRemarks", userRemarks);
428 String serviceBodyJson = new JSONObject().toJSONString(userRemarksMap);
430 HttpRequest httpRequest = new HttpRequest();
432 logger.debug("Send POST request to create service: {}", url);
433 logger.debug("Service body: {}", serviceBodyJson);
434 logger.debug("Service headers: {}", headersMap);
435 RestResponse rejectDistributionResponse = httpRequest.httpSendPost(url, serviceBodyJson, headersMap);
437 return rejectDistributionResponse;