55b0ea0db908f6780262e698d8bdb8885c0eeef6
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / fe / config / PluginsConfiguration.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2019 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
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.openecomp.sdc.fe.config;
22
23 import lombok.Getter;
24 import lombok.Setter;
25 import lombok.ToString;
26 import org.openecomp.sdc.common.api.BasicConfiguration;
27
28 import java.util.ArrayList;
29 import java.util.List;
30 import java.util.Map;
31
32 @Getter
33 @Setter
34 @ToString
35 public class PluginsConfiguration extends BasicConfiguration {
36
37     private List<Plugin> pluginsList;
38     private Integer connectionTimeout;
39
40     public PluginsConfiguration() {
41         this.pluginsList = new ArrayList<>();
42     }
43
44     @Getter
45     @Setter
46     public static class Plugin {
47         private String pluginId;
48         private String pluginDiscoveryUrl;
49         private String pluginSourceUrl;
50         private String pluginStateUrl;
51         private String pluginFeProxyUrl; // this is optional in case it is different from the source url.
52         private String pluginProxyRedirectPath;
53         private Map<String, PluginDisplayOptions> pluginDisplayOptions;
54         private boolean isOnline;
55
56     }
57
58     @Getter
59     @Setter
60     @ToString
61     public static class PluginDisplayOptions {
62         private String displayName;
63         private List<String> displayContext;
64         private List<String> displayRoles;
65     }
66
67 }
68
69