Update sli-adaptor/aai-service package names
[ccsdk/sli/adaptors.git] / aai-service / provider / src / main / java / org / onap / ccsdk / sli / adaptors / aai / PathRequest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * openECOMP : SDN-C
4  * ================================================================================
5  * Copyright (C) 2017 ONAP Intellectual Property. All rights
6  *                                              reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  * 
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  * 
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21
22 package org.onap.ccsdk.sli.adaptors.aai;
23
24 import java.io.UnsupportedEncodingException;
25 import java.net.MalformedURLException;
26 import java.net.URL;
27
28 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
29
30 import com.fasterxml.jackson.core.JsonProcessingException;
31 import com.fasterxml.jackson.databind.ObjectMapper;
32
33 public class PathRequest extends AAIRequest {
34         
35         private final  Class<? extends AAIDatum> classType;
36         
37         public static final String RESOURCE_PATH = "resource-path";
38
39         public PathRequest(Class<?> type) {
40                 classType = (Class<? extends AAIDatum>)type;
41         }
42
43         
44         @Override
45         public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
46
47                 String request_url = target_uri + "{resource-path}";
48                 
49                 String encoded_vnf = requestProperties.getProperty(RESOURCE_PATH);
50                 request_url = request_url.replace("{resource-path}", encoded_vnf) ;
51                 
52                 URL http_req_url =      new URL(request_url);
53
54                 aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
55                 
56                 return http_req_url;
57         }
58         
59         @Override
60         public URL getRequestQueryUrl(String method) throws UnsupportedEncodingException, MalformedURLException {
61                 return this.getRequestUrl(method, null);
62         }
63
64
65         @Override
66         public String toJSONString() {
67                 ObjectMapper mapper = getObjectMapper();
68                 String json_text = null;
69                 try {
70                         json_text = mapper.writeValueAsString(classType);
71                 } catch (JsonProcessingException exc) {
72                         handleException(this, exc);
73                         return null;
74                 }
75                 return json_text;
76         }
77
78         @Override
79         public String[] getArgsList() {
80                 String[] args = {RESOURCE_PATH};
81                 return args;
82         }
83         
84         @Override
85         public Class<? extends AAIDatum> getModelClass() {
86                 return classType;
87         }
88 }