Merge "Fix getManualTasks double-addition of baseUrl"
[vid.git] / vid-automation / src / main / java / org / onap / simulator / presetGenerator / presets / mso / PresetMSODeleteGroupMembers.java
1 package org.onap.simulator.presetGenerator.presets.mso;
2
3 import com.google.common.collect.ImmutableList;
4 import org.springframework.http.HttpMethod;
5
6 import static java.util.stream.Collectors.joining;
7
8 public class PresetMSODeleteGroupMembers extends PresetMSOBaseCreateInstancePost {
9
10
11     private final ImmutableList<String> groupMembersInstanceIds;
12
13     public PresetMSODeleteGroupMembers(String vnfGroupInstanceId, ImmutableList<String> groupMembersInstanceIds, String requestId) {
14         super(requestId, vnfGroupInstanceId);
15         this.groupMembersInstanceIds = groupMembersInstanceIds;
16     }
17
18     @Override
19     public HttpMethod getReqMethod() {
20         return HttpMethod.POST;
21     }
22
23     @Override
24     public String getReqPath() {
25         return getRootPath() + "/serviceInstantiation/v./instanceGroups/" + responseInstanceId + "/removeMembers";
26     }
27
28     @Override
29     public Object getRequestBody() {
30         return "{" +
31                 "  \"requestDetails\": {" +
32                 "    \"requestInfo\": {" +
33                 "      \"source\": \"VID\"," +
34                 "      \"requestorId\": \"us16807000\"" +
35                 "    }," +
36                 "    \"relatedInstanceList\": [" +
37                 groupMembersInstanceIds.stream().map(groupMemberInstanceId ->
38                 "       { " +
39                 "          \"relatedInstance\": { " +
40                 "           \"instanceId\": \""+ groupMemberInstanceId +"\"," +
41                 "           \"modelInfo\": {" +
42                 "               \"modelType\": \"vnf\"" +
43                 "             }" +
44                 "          }" +
45                 "       }").collect(joining(", ")) +
46                 "      ]" +
47                 "    }" +
48                 "}" ;
49         }
50
51 }