Automation adds INFO.yaml
[oom/platform/cert-service.git] / certService / src / main / java / org / onap / oom / certservice / certification / configuration / validation / constraints / violations / PortNumberViolation.java
1 /*
2  * ============LICENSE_START=======================================================
3  * PROJECT
4  * ================================================================================
5  * Copyright (C) 2020 Nokia. 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
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
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=========================================================
19  */
20
21 package org.onap.oom.certservice.certification.configuration.validation.constraints.violations;
22
23 import java.net.MalformedURLException;
24 import java.net.URL;
25
26 public class PortNumberViolation implements UrlServerViolation {
27
28     private static final int MIN_PORT = 1;
29     private static final int MAX_PORT = 65535;
30     private static final int PORT_UNDEFINED = -1;
31
32     @Override
33     public boolean validate(String serverUrl) {
34         try {
35             URL url = new URL(serverUrl);
36             int port = url.getPort();
37             return port >= MIN_PORT && port <= MAX_PORT || port == PORT_UNDEFINED;
38         } catch (MalformedURLException e) {
39             return false;
40         }
41     }
42
43 }