diff options
Diffstat (limited to 'controlloop/common/model-impl/rest')
7 files changed, 0 insertions, 528 deletions
diff --git a/controlloop/common/model-impl/rest/pom.xml b/controlloop/common/model-impl/rest/pom.xml deleted file mode 100644 index 43f84fe76..000000000 --- a/controlloop/common/model-impl/rest/pom.xml +++ /dev/null @@ -1,90 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - Drools PDP Application Models - ================================================================================ - Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. - ================================================================================ - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ============LICENSE_END========================================================= - --> - -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - - <parent> - <groupId>org.onap.policy.drools-applications.controlloop.common.model-impl</groupId> - <artifactId>model-impl</artifactId> - <version>1.4.0-SNAPSHOT</version> - </parent> - - <artifactId>rest</artifactId> - - <dependencies> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.google.code.gson</groupId> - <artifactId>gson</artifactId> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient</artifactId> - <scope>provided</scope> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <artifactId>maven-checkstyle-plugin</artifactId> - <executions> - <execution> - <id>onap-java-style</id> - <goals> - <goal>check</goal> - </goals> - <phase>process-sources</phase> - <configuration> - <!-- Use Google Java Style Guide: - https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml - with minor changes --> - <configLocation>onap-checkstyle/onap-java-style.xml</configLocation> - <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory --> - <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory> - <includeResources>true</includeResources> - <includeTestSourceDirectory>true</includeTestSourceDirectory> - <includeTestResources>true</includeTestResources> - <excludes> - </excludes> - <consoleOutput>true</consoleOutput> - <failsOnViolation>true</failsOnViolation> - <violationSeverity>warning</violationSeverity> - </configuration> - </execution> - </executions> - <dependencies> - <dependency> - <groupId>org.onap.oparent</groupId> - <artifactId>checkstyle</artifactId> - <version>${oparent.version}</version> - <scope>compile</scope> - </dependency> - </dependencies> - </plugin> - </plugins> - </build> -</project> diff --git a/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/HttpDeleteWithBody.java b/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/HttpDeleteWithBody.java deleted file mode 100644 index 3e52d4f10..000000000 --- a/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/HttpDeleteWithBody.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Copyright (C) 2018 Amdocs. All rights reserved. - * Modifications Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import java.net.URI; -import org.apache.http.client.methods.HttpEntityEnclosingRequestBase; - -/** - * Allows for HTTP DELETE requests to contain a body, which the HttpDelete - * class does not support. - */ -public class HttpDeleteWithBody extends HttpEntityEnclosingRequestBase { - public static final String METHOD_NAME = "DELETE"; - - public HttpDeleteWithBody(final String uri) { - super(); - setURI(URI.create(uri)); - } - - public HttpDeleteWithBody(final URI uri) { - super(); - setURI(uri); - } - - public HttpDeleteWithBody() { - super(); - } - - public String getMethod() { - return METHOD_NAME; - } - -} diff --git a/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/RestManager.java b/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/RestManager.java deleted file mode 100644 index 84a220b9a..000000000 --- a/controlloop/common/model-impl/rest/src/main/java/org/onap/policy/rest/RestManager.java +++ /dev/null @@ -1,192 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import java.nio.charset.Charset; -import java.util.Map; -import java.util.Map.Entry; -import javax.xml.bind.DatatypeConverter; - -import org.apache.http.HttpHeaders; -import org.apache.http.HttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.client.methods.HttpRequestBase; -import org.apache.http.conn.ssl.NoopHostnameVerifier; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClientBuilder; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class RestManager { - - private static final Logger logger = LoggerFactory.getLogger(RestManager.class); - - public class Pair<A, B> { - public final A first; - public final B second; - - public Pair(A first, B second) { - this.first = first; - this.second = second; - } - } - - /** - * Perform REST Post. - * - * @param url the url - * @param username the user name - * @param password the password - * @param headers any headers - * @param contentType what the content type is - * @param body body to send - * @return the response status code and the body - */ - public Pair<Integer, String> post(String url, String username, String password, - Map<String, String> headers, String contentType, String body) { - HttpPost post = new HttpPost(url); - addHeaders(post, username, password, headers); - post.addHeader("Content-Type", contentType); - try { - StringEntity input = new StringEntity(body); - input.setContentType(contentType); - post.setEntity(input); - } catch (Exception e) { - logger.error("post threw: ", e); - return null; - } - return sendRequest(post); - } - - /** - * Do a REST get. - * - * @param url URL - * @param username user name - * @param password password - * @param headers any headers to add - * @return a Pair for the response status and the body - */ - public Pair<Integer, String> get(String url, String username, String password, - Map<String, String> headers) { - HttpGet get = new HttpGet(url); - addHeaders(get, username, password, headers); - return sendRequest(get); - } - - /** - * Perform REST Delete. - * - * @param url the url - * @param username the user name - * @param password the password - * @param headers any headers - * @param contentType what the content type is - * @param body body (optional) to send - * @return the response status code and the body - */ - public Pair<Integer, String> delete(String url, String username, String password, Map<String, String> headers, - String contentType, String body) { - HttpDeleteWithBody delete = new HttpDeleteWithBody(url); - addHeaders(delete, username, password, headers); - delete.addHeader("Content-Type", contentType); - if (body != null && !body.isEmpty()) { - try { - StringEntity input = new StringEntity(body); - input.setContentType(contentType); - delete.setEntity(input); - } catch (Exception e) { - logger.error("delete threw: ", e); - return null; - } - } - return sendRequest(delete); - } - - /** - * Send REST request. - * - * @param request http request to send - * @return the response status code and the body - */ - private Pair<Integer, String> sendRequest(HttpRequestBase request) { - if (logger.isDebugEnabled()) { - logger.debug("***** sendRequest to url {}:", request.getURI()); - } - - try (CloseableHttpClient client = - HttpClientBuilder - .create() - .setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE) - .build()) { - HttpResponse response = client.execute(request); - if (response != null) { - String returnBody = EntityUtils.toString(response.getEntity(), "UTF-8"); - logger.debug("HTTP Response Status Code: {}", - response.getStatusLine().getStatusCode()); - logger.debug("HTTP Response Body:"); - logger.debug(returnBody); - - return new Pair<>(response.getStatusLine().getStatusCode(), - returnBody); - } else { - logger.error("Response from {} is null", request.getURI()); - return null; - } - } catch (Exception e) { - logger.error("Request failed to {}", request.getURI(), e); - return null; - } - } - - /** - * Add header to the request. - * - * @param request http request to send - * @param username the user name - * @param password the password - * @param headers any headers - */ - private void addHeaders(HttpRequestBase request, String username, String password, Map<String, - String> headers) { - String authHeader = makeAuthHeader(username, password); - if (headers != null) { - for (Entry<String, String> entry : headers.entrySet()) { - request.addHeader(entry.getKey(), headers.get(entry.getKey())); - } - } - if (authHeader != null) { - request.setHeader(HttpHeaders.AUTHORIZATION, authHeader); - } - } - - private String makeAuthHeader(String username, String password) { - if (username == null || username.isEmpty()) { - return null; - } - - String auth = username + ":" + (password == null ? "" : password); - return "Basic " + DatatypeConverter.printBase64Binary(auth.getBytes(Charset.forName("ISO-8859-1"))); - } -} diff --git a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/GetTest.java b/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/GetTest.java deleted file mode 100755 index 37e38ec70..000000000 --- a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/GetTest.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import org.junit.Test; -import org.onap.policy.rest.RestManager.Pair; - -public class GetTest { - - @Test(expected = NullPointerException.class) - public void testUrlNull() { - RestManager mgr = new RestManager(); - mgr.get(null, "user", null, null); - } - - @Test - public void testUsernameNull() { - RestManager mgr = new RestManager(); - - Pair<Integer, String> result = mgr.get("http://www.example.org", null, null, null); - assertEquals((Integer)200, result.first); - assertTrue(result.second != null); - assertTrue(result.second.length() > 0); - } - - @Test - public void testUsernameEmpty() { - RestManager mgr = new RestManager(); - - Pair<Integer, String> result = mgr.get("http://www.example.org", "", null, null); - assertEquals((Integer)200, result.first); - assertTrue(result.second != null); - assertTrue(result.second.length() > 0); - } - - @Test - public void testUrlExampleOrg() { - RestManager mgr = new RestManager(); - - Pair<Integer, String> result = mgr.get("http://www.example.org", "user", null, null); - assertEquals((Integer)200, result.first); - assertTrue(result.second != null); - assertTrue(result.second.length() > 0); - } -} diff --git a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/HttpDeleteWithBodyTest.java b/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/HttpDeleteWithBodyTest.java deleted file mode 100644 index 0cb5f3aef..000000000 --- a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/HttpDeleteWithBodyTest.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Copyright (C) 2018 Amdocs. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import static org.junit.Assert.assertEquals; - -import org.junit.Test; - -public class HttpDeleteWithBodyTest { - - @Test - public void getMethod() { - String url = "http://www.example.org"; - HttpDeleteWithBody deleteWithBody = new HttpDeleteWithBody(url); - assertEquals("DELETE", deleteWithBody.getMethod()); - assertEquals(url, deleteWithBody.getURI().toString()); - } -}
\ No newline at end of file diff --git a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PairTest.java b/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PairTest.java deleted file mode 100755 index 6269e9de4..000000000 --- a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PairTest.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import static org.junit.Assert.assertEquals; - -import org.junit.Test; -import org.onap.policy.rest.RestManager.Pair; - -public class PairTest { - - @Test - public void testPair() { - RestManager mgr = new RestManager(); - - Pair<Integer, Integer> pii = mgr.new Pair<>(1, 2); - assertEquals((Integer) 1, (Integer) pii.first); - assertEquals((Integer) 2, (Integer) pii.second); - - Pair<Integer, String> pis = mgr.new Pair<>(1, "test"); - assertEquals((Integer) 1, (Integer) pis.first); - assertEquals("test", pis.second); - } -} diff --git a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PostTest.java b/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PostTest.java deleted file mode 100755 index 834c29873..000000000 --- a/controlloop/common/model-impl/rest/src/test/java/org/onap/policy/rest/PostTest.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * rest - * ================================================================================ - * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.rest; - -import static org.junit.Assert.assertEquals; - -import org.junit.Test; -import org.onap.policy.rest.RestManager.Pair; - -public class PostTest { - - @Test - public void testUsernameNull() { - RestManager mgr = new RestManager(); - Pair<Integer, String> result = mgr.post("http://www.example.org", null, null, null, null, null); - assertEquals(null, result); - } - - @Test - public void testUsernameEmpty() { - RestManager mgr = new RestManager(); - Pair<Integer, String> result = mgr.post("http://www.example.org", "", null, null, null, null); - assertEquals(null, result); - } - - @Test - public void testBodyNull() { - RestManager mgr = new RestManager(); - Pair<Integer, String> result = mgr.post("http://www.example.org", "user", null, null, null, null); - assertEquals(null, result); - } -} |