watch tls files
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / be / config / Configuration.java
index f7f9834..3222c26 100644 (file)
@@ -7,9 +7,9 @@
  * 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.
 
 package org.openecomp.sdc.be.config;
 
-import org.apache.commons.collections.map.CaseInsensitiveMap;
-import org.openecomp.sdc.common.api.BasicConfiguration;
+import static java.lang.String.format;
+import static java.util.Collections.emptyMap;
 
+import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+import lombok.ToString;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections.map.CaseInsensitiveMap;
+import org.openecomp.sdc.common.api.BasicConfiguration;
 
-import static java.lang.String.format;
-import static java.util.Collections.emptyMap;
-
+@Getter
+@Setter
+@NoArgsConstructor
 public class Configuration extends BasicConfiguration {
 
     private List<String> identificationHeaderFields;
     /**
-     * Requests from these Urls will not be logged by
-     * org.openecomp.sdc.be.filters.BeServletFilter.<br>
+     * Requests from these Urls will not be logged by org.openecomp.sdc.be.filters.BeServletFilter.<br>
      **/
     private List<String> unLoggedUrls;
-
     /**
      * backend host
      */
@@ -60,7 +66,9 @@ public class Configuration extends BasicConfiguration {
      * backend protocol. http | https
      */
     private String beProtocol = "http";
-
+    private String tlsCert;
+    private String tlsKey;
+    private String caCert;
     private Date released;
     private String version = "1111";
     private String toscaConformanceLevel = "3.0";
@@ -68,1515 +76,440 @@ public class Configuration extends BasicConfiguration {
     private List<String> protocols;
     private Map<String, String> users;
     private Map<String, Object> neo4j;
-    private ElasticSearchConfig elasticSearch;
-    private String titanCfgFile;
-    private String titanMigrationKeySpaceCfgFile;
-    private Boolean titanInMemoryGraph;
+    private String janusGraphCfgFile;
+    private String janusGraphMigrationKeySpaceCfgFile;
+    private Boolean janusGraphInMemoryGraph;
     private int startMigrationFrom;
-    private Long titanLockTimeout;
-    private Long titanReconnectIntervalInSeconds;
+    private Long janusGraphLockTimeout;
+    private Long janusGraphReconnectIntervalInSeconds;
     private List<String> healthStatusExclude;
-    private Long titanHealthCheckReadTimeout;
-    private Long esReconnectIntervalInSeconds;
+    private Long janusGraphHealthCheckReadTimeout;
     private Long uebHealthCheckReconnectIntervalInSeconds;
     private Long uebHealthCheckReadTimeout;
     private List<Map<String, Map<String, String>>> defaultImports;
-
+    private List<String> globalCsarImports;
     private List<String> resourceTypes;
     private List<String> excludeResourceCategory;
     private List<String> excludeResourceType;
     private Map<String, Set<String>> excludedPolicyTypesMapping;
-
     private Map<String, Set<String>> excludedGroupTypesMapping;
     private Map<String, Object> deploymentResourceArtifacts;
     private Map<String, Object> deploymentResourceInstanceArtifacts;
     private Map<String, Object> toscaArtifacts;
     private Map<String, Object> informationalResourceArtifacts;
     private Map<String, Object> informationalServiceArtifacts;
-    private Map<String, ArtifactTypeConfig> resourceDeploymentArtifacts;
-    private Map<String, ArtifactTypeConfig> serviceDeploymentArtifacts;
-    private Map<String, ArtifactTypeConfig> resourceInstanceDeploymentArtifacts;
-    private Map<String, ArtifactTypeConfig> resourceInformationalArtifacts;
-    private Map<String, ArtifactTypeConfig> resourceInformationalDeployedArtifacts;
     private Map<String, Object> serviceApiArtifacts;
     private List<String> excludeServiceCategory;
-    private Map<String, Set<String>> requirementsToFulfillBeforeCert;
-    private Map<String, Set<String>> capabilitiesToConsumeBeforeCert;
-
-    private List<String> artifactTypes;
     private List<String> licenseTypes;
-
+    private List<String> definedResourceNamespace;
+    private List<String> directives;
+    private List<CustomToscaFunction> defaultCustomToscaFunctions;
     private Integer additionalInformationMaxNumberOfKeys;
-    private Integer defaultHeatArtifactTimeoutMinutes;
-
+    private HeatDeploymentArtifactTimeout heatArtifactDeploymentTimeout;
     private BeMonitoringConfig systemMonitoring;
     private CleanComponentsConfiguration cleanComponentsConfiguration;
-
     private String artifactsIndex;
-
     private String heatEnvArtifactHeader;
     private String heatEnvArtifactFooter;
-
     private String toscaFilesDir;
     private String heatTranslatorPath;
-
     private OnboardingConfig onboarding;
-
-    private DcaeConfig dcae;
-
+    private BasicAuthConfig basicAuth;
     private CassandrConfig cassandraConfig;
-
     private SwitchoverDetectorConfig switchoverDetector;
-
     private ApplicationL1CacheConfig applicationL1Cache;
-
     private ApplicationL2CacheConfig applicationL2Cache;
-
     private ToscaValidatorsConfig toscaValidators;
-
     private boolean disableAudit;
-
     private Map<String, VfModuleProperty> vfModuleProperties;
-
     private Map<String, String> genericAssetNodeTypes;
-
+    private Map<String, CategoryBaseTypeConfig> serviceBaseNodeTypes;
+    private Map<String, Map<String, String>> resourceNodeTypes;
     private String appVersion;
-
-    public String getAutoHealingOwner() {
-        return autoHealingOwner;
-    }
-
-    public void setAutoHealingOwner(String autoHealingOwner) {
-        this.autoHealingOwner = autoHealingOwner;
-    }
-
+    private String artifactGeneratorConfig;
     private String autoHealingOwner;
     private boolean enableAutoHealing;
-
     private Map<String, List<String>> resourcesForUpgrade;
     private DmaapConsumerConfiguration dmaapConsumerConfiguration;
-       private boolean skipUpgradeFailedVfs;
-       private boolean skipUpgradeVSPs;
+    private DmaapProducerConfiguration dmaapProducerConfiguration;
+    private boolean skipUpgradeFailedVfs;
+    private boolean skipUpgradeVSPs;
     private DmeConfiguration dmeConfiguration;
-
     private boolean supportAllottedResourcesAndProxy;
     private Integer deleteLockTimeoutInSeconds;
     private Integer maxDeleteComponents;
-
-    public Integer getMaxDeleteComponents() {
-        return maxDeleteComponents;
-    }
-
-    public void setMaxDeleteComponents(Integer maxDeleteComponents) {
-        this.maxDeleteComponents = maxDeleteComponents;
-    }
-
-    public void setEnableAutoHealing(boolean enableAutoHealing) {
-        this.enableAutoHealing = enableAutoHealing;
-    }
-
-    public boolean isEnableAutoHealing() {
-        return enableAutoHealing;
-    }
-
-    public Integer getDeleteLockTimeoutInSeconds() {
-        return deleteLockTimeoutInSeconds;
-    }
-
-    public void setDeleteLockTimeoutInSeconds(Integer deleteLockTimeoutInSeconds) {
-        this.deleteLockTimeoutInSeconds = deleteLockTimeoutInSeconds;
-    }
-
-    public DmaapConsumerConfiguration getDmaapConsumerConfiguration() {
-        return dmaapConsumerConfiguration;
-    }
-
-    public void setDmaapConsumerConfiguration(DmaapConsumerConfiguration dmaapConsumerConfiguration) {
-        this.dmaapConsumerConfiguration = dmaapConsumerConfiguration;
-    }
-
-    public DmeConfiguration getDmeConfiguration() {
-        return dmeConfiguration;
-    }
-
-    public void setDmeConfiguration(DmeConfiguration dmeConfiguration) {
-        this.dmeConfiguration = dmeConfiguration;
-    }
-    public void setSkipUpgradeVSPs(boolean skipUpgradeVSPs) { this.skipUpgradeVSPs = skipUpgradeVSPs; }
-
-    public boolean getSkipUpgradeVSPsFlag() { return skipUpgradeVSPs; }
-
-    public boolean getSkipUpgradeFailedVfs() {
-        return skipUpgradeFailedVfs;
-    }
-
-    public boolean getSupportAllottedResourcesAndProxyFlag() {
-        return supportAllottedResourcesAndProxy;
-    }
-
-    public void setSupportAllottedResourcesAndProxy(boolean supportAllottedResourcesAndProxy) {
-        this.supportAllottedResourcesAndProxy = supportAllottedResourcesAndProxy;
-    }
-
-    public void setSkipUpgradeFailedVfs(boolean skipUpgradeFailedVfs) {
-        this.skipUpgradeFailedVfs = skipUpgradeFailedVfs;
-    }
-
-    public String getAppVersion() {
-        return appVersion;
-    }
-
-    public void setAppVersion(String appVersion) {
-        this.appVersion = appVersion;
-    }
-
     private String workloadContext;
-
     private EnvironmentContext environmentContext;
-
-    public Map<String, String> getGenericAssetNodeTypes() {
-        return genericAssetNodeTypes;
-    }
-
-    public void setGenericAssetNodeTypes(Map<String, String> genericAssetNodeTypes) {
-        this.genericAssetNodeTypes = genericAssetNodeTypes;
-    }
-
-    public SwitchoverDetectorConfig getSwitchoverDetector() {
-        return switchoverDetector;
-    }
-
-    public void setSwitchoverDetector(SwitchoverDetectorConfig switchoverDetector) {
-        this.switchoverDetector = switchoverDetector;
-    }
-
-    public ApplicationL1CacheConfig getApplicationL1Cache() {
-        return applicationL1Cache;
-    }
-
-    public void setApplicationL1Cache(ApplicationL1CacheConfig applicationL1Cache) {
-        this.applicationL1Cache = applicationL1Cache;
-    }
-
-    public ApplicationL2CacheConfig getApplicationL2Cache() {
-        return applicationL2Cache;
-    }
-
-    public void setApplicationL2Cache(ApplicationL2CacheConfig applicationL2Cache) {
-        this.applicationL2Cache = applicationL2Cache;
-    }
-
+    private List<GabConfig> gabConfig;
     private EcompPortalConfig ecompPortal;
+    private List<ArtifactConfiguration> artifacts;
+    private Map<String, Map<String, List<String>>> componentAllowedInstanceTypes;
+    private ExternalCsarStore externalCsarStore;
+    private CsarFormat csarFormat;
+    private String componentInstanceCounterDelimiter;
+    private String dataValidatorFilterExcludedUrls; // Comma separated list of excluded URLs by the DataValidatorFilter
+    private String permittedAncestors; // Space separated list of permitted ancestors
 
-    public CassandrConfig getCassandraConfig() {
-        return cassandraConfig;
-    }
-
-    public void setCassandraConfig(CassandrConfig cassandraKeySpace) {
-        this.cassandraConfig = cassandraKeySpace;
-    }
-
-    public List<String> getIdentificationHeaderFields() {
-        return identificationHeaderFields;
-    }
-
-    public void setIdentificationHeaderFields(List<String> identificationHeaderFields) {
-        this.identificationHeaderFields = identificationHeaderFields;
-    }
-
-    public Date getReleased() {
-        return released;
-    }
-
-    public String getVersion() {
-        return version;
-    }
-
-    public void setReleased(Date released) {
-        this.released = released;
-    }
-
-    public void setVersion(String version) {
-        this.version = version;
-    }
-
-    public List<String> getProtocols() {
-        return protocols;
-    }
-
-    public void setProtocols(List<String> protocols) {
-        this.protocols = protocols;
-    }
-
-    public Map<String, String> getUsers() {
-        return users;
-    }
-
-    public void setUsers(Map<String, String> users) {
-        this.users = users;
-    }
-
-    public String getBeFqdn() {
-        return beFqdn;
-    }
-
-    public void setBeFqdn(String beHost) {
-        this.beFqdn = beHost;
-    }
-
-    public Integer getBeHttpPort() {
-        return beHttpPort;
-    }
-
-    public void setBeHttpPort(Integer beHttpPort) {
-        this.beHttpPort = beHttpPort;
-    }
-
-    public Integer getBeSslPort() {
-        return beSslPort;
-    }
-
-    public void setBeSslPort(Integer beSslPort) {
-        this.beSslPort = beSslPort;
-    }
-
-    public String getBeContext() {
-        return beContext;
-    }
-
-    public void setBeContext(String beContext) {
-        this.beContext = beContext;
-    }
-
-    public String getBeProtocol() {
-        return beProtocol;
-    }
-
-    public void setBeProtocol(String beProtocol) {
-        this.beProtocol = beProtocol;
-    }
-
-    public Map<String, Object> getNeo4j() {
-        return neo4j;
-    }
-
-    public void setNeo4j(Map<String, Object> neo4j) {
-        this.neo4j = neo4j;
-    }
-
-    public ElasticSearchConfig getElasticSearch() {
-        return elasticSearch;
-    }
-
-    public void setElasticSearch(ElasticSearchConfig elasticSearch) {
-        this.elasticSearch = elasticSearch;
-    }
-
-    public String getTitanCfgFile() {
-        return titanCfgFile;
-    }
-
-    public void setTitanCfgFile(String titanCfgFile) {
-        this.titanCfgFile = titanCfgFile;
-    }
-
-    public String getTitanMigrationKeySpaceCfgFile() {
-        return titanMigrationKeySpaceCfgFile;
-    }
-
-    public void setTitanMigrationKeySpaceCfgFile(String titanMigrationKeySpaceCfgFile) {
-        this.titanMigrationKeySpaceCfgFile = titanMigrationKeySpaceCfgFile;
-    }
-
-    public Boolean getTitanInMemoryGraph() {
-        return titanInMemoryGraph;
-    }
-
-    public void setTitanInMemoryGraph(Boolean titanInMemoryGraph) {
-        this.titanInMemoryGraph = titanInMemoryGraph;
-    }
-
-    public int getStartMigrationFrom() {
-        return startMigrationFrom;
-    }
-
-    public void setStartMigrationFrom(int startMigrationFrom) {
-        this.startMigrationFrom = startMigrationFrom;
-    }
-
-    public Long getTitanLockTimeout() {
-        return titanLockTimeout;
-    }
-
-    public void setTitanLockTimeout(Long titanLockTimeout) {
-        this.titanLockTimeout = titanLockTimeout;
-    }
-
-    public Long getTitanHealthCheckReadTimeout() {
-        return titanHealthCheckReadTimeout;
-    }
-
-    public Long getTitanHealthCheckReadTimeout(long defaultVal) {
-        return titanHealthCheckReadTimeout == null ? defaultVal : titanHealthCheckReadTimeout;
+    @SuppressWarnings("unchecked")
+    private <K, V> Map<K, V> safeGetCapsInsensitiveMap(Map<K, V> map) {
+        return map == null ? emptyMap() : new CaseInsensitiveMap(map);
     }
 
-    public void setTitanHealthCheckReadTimeout(Long titanHealthCheckReadTimeout) {
-        this.titanHealthCheckReadTimeout = titanHealthCheckReadTimeout;
+    public Long getJanusGraphHealthCheckReadTimeout(long defaultVal) {
+        return janusGraphHealthCheckReadTimeout == null ? defaultVal : janusGraphHealthCheckReadTimeout;
     }
 
-    public Long getTitanReconnectIntervalInSeconds() {
-        return titanReconnectIntervalInSeconds;
+    public Long getJanusGraphReconnectIntervalInSeconds(long defaultVal) {
+        return janusGraphReconnectIntervalInSeconds == null ? defaultVal : janusGraphReconnectIntervalInSeconds;
     }
 
-    public Long getTitanReconnectIntervalInSeconds(long defaultVal) {
-        return titanReconnectIntervalInSeconds == null ? defaultVal : titanReconnectIntervalInSeconds;
+    public Map<String, Set<String>> getExcludedPolicyTypesMapping() {
+        return safeGetCapsInsensitiveMap(excludedPolicyTypesMapping);
     }
 
-    public void setTitanReconnectIntervalInSeconds(Long titanReconnectIntervalInSeconds) {
-        this.titanReconnectIntervalInSeconds = titanReconnectIntervalInSeconds;
+    public Map<String, Set<String>> getExcludedGroupTypesMapping() {
+        return safeGetCapsInsensitiveMap(excludedGroupTypesMapping);
     }
 
-    public Long getEsReconnectIntervalInSeconds() {
-        return esReconnectIntervalInSeconds;
+    public List<Map<String, Map<String, String>>> getDefaultImports() {
+        return Collections.unmodifiableList(defaultImports);
     }
 
-    public Long getEsReconnectIntervalInSeconds(long defaultVal) {
-        return esReconnectIntervalInSeconds == null ? defaultVal : esReconnectIntervalInSeconds;
-    }
+    @Override
+    public String toString() {
+        return new StringBuilder().append(format("backend host: %s%n", beFqdn)).append(format("backend http port: %s%n", beHttpPort))
+            .append(format("backend ssl port: %s%n", beSslPort)).append(format("backend context: %s%n", beContext))
+            .append(format("backend protocol: %s%n", beProtocol)).append(format("Version: %s%n", version)).append(format("Released: %s%n", released))
+            .append(format("Supported protocols: %s%n", protocols)).append(format("Users: %s%n", users)).append(format("Neo4j: %s%n", neo4j))
+            .append(format("JanusGraph Cfg File: %s%n", janusGraphCfgFile)).append(format("JanusGraph In memory: %s%n", janusGraphInMemoryGraph))
+            .append(format("JanusGraph lock timeout: %s%n", janusGraphLockTimeout))
+            .append(format("JanusGraph reconnect interval seconds: %s%n", janusGraphReconnectIntervalInSeconds))
+            .append(format("excludeResourceCategory: %s%n", excludeResourceCategory))
+            .append(format("informationalResourceArtifacts: %s%n", informationalResourceArtifacts))
+            .append(format("deploymentResourceArtifacts: %s%n", deploymentResourceArtifacts))
+            .append(format("informationalServiceArtifacts: %s%n", informationalServiceArtifacts))
+            .append(format("Supported artifacts types: %s%n", artifacts)).append(format("Supported license types: %s%n", licenseTypes))
+            .append(format("Additional information Maximum number of preoperties: %s%n", additionalInformationMaxNumberOfKeys))
+            .append(format("Heat Artifact Timeout in Minutes: %s%n", heatArtifactDeploymentTimeout))
+            .append(format("URLs For HTTP Requests that will not be automatically logged : %s%n", unLoggedUrls))
+            .append(format("Service Api Artifacts: %s%n", serviceApiArtifacts))
+            .append(format("heat env artifact header: %s%n", heatEnvArtifactHeader))
+            .append(format("heat env artifact footer: %s%n", heatEnvArtifactFooter)).append(format("onboarding: %s%n", onboarding)).toString();
+    }
+
+    public List<String> getGlobalCsarImports() {
+        if (CollectionUtils.isEmpty(globalCsarImports)) {
+            return Collections.emptyList();
+        }
+        return globalCsarImports;
+    }
+
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class CassandrConfig {
 
-    public void setEsReconnectIntervalInSeconds(Long esReconnectIntervalInSeconds) {
-        this.esReconnectIntervalInSeconds = esReconnectIntervalInSeconds;
-    }
+        private static final Integer CASSANDRA_DEFAULT_PORT = 9042;
+        private List<String> cassandraHosts;
+        private Integer cassandraPort;
+        private String localDataCenter;
+        private Long reconnectTimeout;
+        private Integer socketReadTimeout;
+        private Integer socketConnectTimeout;
+        private List<KeyspaceConfig> keySpaces;
+        private boolean authenticate;
+        private String username;
+        private String password;
+        private boolean ssl;
+        private String truststorePath;
+        private String truststorePassword;
+        private int maxWaitSeconds = 120;
+
+        public Integer getCassandraPort() {
+            return cassandraPort != null ? cassandraPort : Configuration.CassandrConfig.CASSANDRA_DEFAULT_PORT;
+        }
+
+        @Getter
+        @Setter
+        @NoArgsConstructor
+        public static class KeyspaceConfig {
 
-    public List<String> getArtifactTypes() {
-        return artifactTypes;
+            private String name;
+            private String replicationStrategy;
+            private List<String> replicationInfo;
+        }
     }
 
-    public void setArtifactTypes(List<String> artifactTypes) {
-        this.artifactTypes = artifactTypes;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class SwitchoverDetectorConfig {
 
-    public List<String> getExcludeResourceCategory() {
-        return excludeResourceCategory;
-    }
+        private String gBeFqdn;
+        private String gFeFqdn;
+        private String beVip;
+        private String feVip;
+        private int beResolveAttempts;
+        private int feResolveAttempts;
+        private Boolean enabled;
+        private long interval;
+        private String changePriorityUser;
+        private String changePriorityPassword;
+        private String publishNetworkUrl;
+        private String publishNetworkBody;
+        private Map<String, GroupInfo> groups;
 
-    public void setExcludeResourceCategory(List<String> excludeResourceCategory) {
-        this.excludeResourceCategory = excludeResourceCategory;
-    }
+        public String getgBeFqdn() {
+            return gBeFqdn;
+        }
 
-    public List<String> getExcludeResourceType() {
-        return excludeResourceType;
-    }
+        public void setgBeFqdn(String gBeFqdn) {
+            this.gBeFqdn = gBeFqdn;
+        }
 
-    public void setExcludeResourceType(List<String> excludeResourceType) {
-        this.excludeResourceType = excludeResourceType;
-    }
+        public String getgFeFqdn() {
+            return gFeFqdn;
+        }
 
-    public Map<String, Set<String>> getExcludedPolicyTypesMapping() {
-        return safeGetCapsInsensitiveMap(excludedPolicyTypesMapping);
-    }
+        public void setgFeFqdn(String gFeFqdn) {
+            this.gFeFqdn = gFeFqdn;
+        }
 
-    public void setExcludedPolicyTypesMapping(Map<String, Set<String>> excludedPolicyTypesMapping) {
-        this.excludedPolicyTypesMapping = excludedPolicyTypesMapping;
-    }
+        @Getter
+        @Setter
+        @NoArgsConstructor
+        public static class GroupInfo {
 
-    public Map<String, Set<String>> getExcludedGroupTypesMapping() {
-        return safeGetCapsInsensitiveMap(excludedGroupTypesMapping);
+            String changePriorityUrl;
+            String changePriorityBody;
+        }
     }
 
-    public void setExcludedGroupTypesMapping(Map<String, Set<String>> excludedGroupTypesMapping) {
-        this.excludedGroupTypesMapping = excludedGroupTypesMapping;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class HeatDeploymentArtifactTimeout {
 
-    public Map<String, Object> getToscaArtifacts() {
-        return toscaArtifacts;
+        private Integer defaultMinutes;
+        private Integer minMinutes;
+        private Integer maxMinutes;
     }
 
-    public void setToscaArtifacts(Map<String, Object> toscaArtifacts) {
-        this.toscaArtifacts = toscaArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class BeMonitoringConfig {
 
-    public Map<String, Object> getInformationalResourceArtifacts() {
-        return informationalResourceArtifacts;
-    }
+        private Boolean enabled;
+        private Boolean isProxy;
+        private Integer probeIntervalInSeconds;
 
-    public void setInformationalResourceArtifacts(Map<String, Object> informationalResourceArtifacts) {
-        this.informationalResourceArtifacts = informationalResourceArtifacts;
+        public Integer getProbeIntervalInSeconds(int defaultVal) {
+            return probeIntervalInSeconds == null ? defaultVal : probeIntervalInSeconds;
+        }
     }
 
-    public Map<String, Object> getInformationalServiceArtifacts() {
-        return informationalServiceArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class ArtifactTypeConfig {
 
-    public void setInformationalServiceArtifacts(Map<String, Object> informationalServiceArtifacts) {
-        this.informationalServiceArtifacts = informationalServiceArtifacts;
+        private List<String> acceptedTypes;
+        private List<String> validForResourceTypes;
     }
 
-    public Map<String, Object> getServiceApiArtifacts() {
-        return serviceApiArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class OnboardingConfig {
 
-    public void setServiceApiArtifacts(Map<String, Object> serviceApiArtifacts) {
-        this.serviceApiArtifacts = serviceApiArtifacts;
+        private String protocol = "http";
+        private String host;
+        private Integer port;
+        private String getLatestVspPackageUri;
+        private String getVspPackageUri;
+        private String getVspUri;
+        private String getLatestVspUri;
+        @ToString.Exclude
+        private String healthCheckUri;
     }
 
-    public Map<String, ArtifactTypeConfig> getServiceDeploymentArtifacts() {
-        return serviceDeploymentArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class BasicAuthConfig {
 
-    public void setServiceDeploymentArtifacts(Map<String, ArtifactTypeConfig> serviceDeploymentArtifacts) {
-        this.serviceDeploymentArtifacts = serviceDeploymentArtifacts;
+        private boolean enabled;
+        private String userName;
+        private String userPass;
+        private String excludedUrls;
     }
 
-    public Map<String, ArtifactTypeConfig> getResourceDeploymentArtifacts() {
-        return resourceDeploymentArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString(onlyExplicitlyIncluded = true)
+    public static class EcompPortalConfig {
 
-    public void setResourceDeploymentArtifacts(Map<String, ArtifactTypeConfig> resourceDeploymentArtifacts) {
-        this.resourceDeploymentArtifacts = resourceDeploymentArtifacts;
+        private String protocol = "https";
+        private String host;
+        private Integer port;
+        private String healthCheckUri;
+        @ToString.Include
+        private String defaultFunctionalMenu;
+        private Integer pollingInterval;
+        private Integer timeoutMs;
     }
 
-    public void setResourceInstanceDeploymentArtifacts(
-            Map<String, ArtifactTypeConfig> resourceInstanceDeploymentArtifacts) {
-        this.resourceInstanceDeploymentArtifacts = resourceInstanceDeploymentArtifacts;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class ApplicationL1CacheConfig {
 
-    public Map<String, ArtifactTypeConfig> getResourceInstanceDeploymentArtifacts() {
-        return resourceInstanceDeploymentArtifacts;
+        private ApplicationL1CacheInfo datatypes;
     }
 
-    public List<String> getExcludeServiceCategory() {
-        return excludeServiceCategory;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class ApplicationL2CacheConfig {
 
-    public void setExcludeServiceCategory(List<String> excludeServiceCategory) {
-        this.excludeServiceCategory = excludeServiceCategory;
+        private boolean enabled;
+        private ApplicationL1CacheCatalogInfo catalogL1Cache;
+        @ToString.Exclude
+        private QueueInfo queue;
     }
 
-    public List<String> getLicenseTypes() {
-        return licenseTypes;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class ToscaValidatorsConfig {
 
-    public void setLicenseTypes(List<String> licenseTypes) {
-        this.licenseTypes = licenseTypes;
+        private Integer stringMaxLength;
     }
 
-    public Integer getAdditionalInformationMaxNumberOfKeys() {
-        return additionalInformationMaxNumberOfKeys;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class ApplicationL1CacheInfo {
 
-    public void setAdditionalInformationMaxNumberOfKeys(Integer additionalInformationMaxNumberOfKeys) {
-        this.additionalInformationMaxNumberOfKeys = additionalInformationMaxNumberOfKeys;
+        private Boolean enabled;
+        private Integer firstRunDelay;
+        private Integer pollIntervalInSec;
     }
 
-    public BeMonitoringConfig getSystemMonitoring() {
-        return systemMonitoring;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class ApplicationL1CacheCatalogInfo {
 
-    public void setSystemMonitoring(BeMonitoringConfig systemMonitoring) {
-        this.systemMonitoring = systemMonitoring;
+        private Boolean enabled;
+        private Integer resourcesSizeInCache;
+        private Integer servicesSizeInCache;
+        private Integer productsSizeInCache;
     }
 
-    public Integer getDefaultHeatArtifactTimeoutMinutes() {
-        return defaultHeatArtifactTimeoutMinutes;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    @ToString
+    public static class QueueInfo {
 
-    public void setDefaultHeatArtifactTimeoutMinutes(Integer defaultHeatArtifactTimeoutMinutes) {
-        this.defaultHeatArtifactTimeoutMinutes = defaultHeatArtifactTimeoutMinutes;
+        private Integer waitOnShutDownInMinutes;
+        private Integer syncIntervalInSecondes;
+        private Integer numberOfCacheWorkers;
     }
 
-    public Long getUebHealthCheckReconnectIntervalInSeconds() {
-        return uebHealthCheckReconnectIntervalInSeconds;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class EnvironmentContext {
 
-    public void setUebHealthCheckReconnectIntervalInSeconds(Long uebHealthCheckReconnectIntervalInSeconds) {
-        this.uebHealthCheckReconnectIntervalInSeconds = uebHealthCheckReconnectIntervalInSeconds;
+        private String defaultValue;
+        private List<String> validValues;
     }
 
-    public Long getUebHealthCheckReadTimeout() {
-        return uebHealthCheckReadTimeout;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class VfModuleProperty {
 
-    public void setUebHealthCheckReadTimeout(Long uebHealthCheckReadTimeout) {
-        this.uebHealthCheckReadTimeout = uebHealthCheckReadTimeout;
+        private String forBaseModule;
+        private String forNonBaseModule;
     }
 
-    public String getWorkloadContext() {
-        return workloadContext;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class PathsAndNamesDefinition {
 
-    public void setWorkloadContext(String workloadContext) {
-        this.workloadContext = workloadContext;
+        private String friendlyName;
+        private String path;
+        private Boolean searchable;
     }
 
-    public EnvironmentContext getEnvironmentContext() {
-        return environmentContext;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class GabConfig {
 
-    public void setEnvironmentContext(EnvironmentContext environmentContext) {
-        this.environmentContext = environmentContext;
+        private String artifactType;
+        private List<PathsAndNamesDefinition> pathsAndNamesDefinitions;
     }
 
-    public static class ElasticSearchConfig {
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class ExternalCsarStore {
 
-        List<IndicesTimeFrequencyEntry> indicesTimeFrequency;
+        private String storageType;
+        private Endpoint endpoint;
+        private Credentials credentials;
+        private String tempPath;
+        private int uploadPartSize;
 
-        public List<IndicesTimeFrequencyEntry> getIndicesTimeFrequency() {
-            return indicesTimeFrequency;
-        }
+        @Getter
+        @Setter
+        @NoArgsConstructor
+        public static class Endpoint {
 
-        public void setIndicesTimeFrequency(List<IndicesTimeFrequencyEntry> indicesTimeFrequency) {
-            this.indicesTimeFrequency = indicesTimeFrequency;
+            private String host;
+            private int port;
+            private boolean secure;
         }
 
-        public static class IndicesTimeFrequencyEntry {
-
-            String indexPrefix;
-            String creationPeriod;
-
-            public String getIndexPrefix() {
-                return indexPrefix;
-            }
+        @Getter
+        @Setter
+        @NoArgsConstructor
+        public static class Credentials {
 
-            public void setIndexPrefix(String indexPrefix) {
-                this.indexPrefix = indexPrefix;
-            }
-
-            public String getCreationPeriod() {
-                return creationPeriod;
-            }
-
-            public void setCreationPeriod(String creationPeriod) {
-                this.creationPeriod = creationPeriod;
-            }
+            private String accessKey;
+            private String secretKey;
         }
     }
 
-    public static class CassandrConfig {
-
-        List<String> cassandraHosts;
-        String localDataCenter;
-        Long reconnectTimeout;
-               Integer socketReadTimeout;
-               Integer socketConnectTimeout;
-        List<KeyspaceConfig> keySpaces;
-        boolean authenticate;
-        String username;
-        String password;
-        boolean ssl;
-        String truststorePath;
-        String truststorePassword;
-
-        public String getLocalDataCenter() {
-            return localDataCenter;
-        }
-
-        public void setLocalDataCenter(String localDataCenter) {
-            this.localDataCenter = localDataCenter;
-        }
-
-        public boolean isAuthenticate() {
-            return authenticate;
-        }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class CsarFormat {
 
-        public void setAuthenticate(boolean authenticate) {
-            this.authenticate = authenticate;
-        }
+        private String defaultFormat;
+    }
 
-        public String getUsername() {
-            return username;
-        }
-
-        public void setUsername(String username) {
-            this.username = username;
-        }
-
-        public String getPassword() {
-            return password;
-        }
-
-        public void setPassword(String password) {
-            this.password = password;
-        }
-
-        public boolean isSsl() {
-            return ssl;
-        }
-
-        public void setSsl(boolean ssl) {
-            this.ssl = ssl;
-        }
-
-        public String getTruststorePath() {
-            return truststorePath;
-        }
-
-        public void setTruststorePath(String truststorePath) {
-            this.truststorePath = truststorePath;
-        }
-
-        public String getTruststorePassword() {
-            return truststorePassword;
-        }
-
-        public void setTruststorePassword(String truststorePassword) {
-            this.truststorePassword = truststorePassword;
-        }
-
-        public Long getReconnectTimeout() {
-            return reconnectTimeout;
-        }
-
-        public void setReconnectTimeout(Long reconnectTimeout) {
-            this.reconnectTimeout = reconnectTimeout;
-        }
-
-               public Integer getSocketReadTimeout() { return socketReadTimeout; }
-
-               public void setSocketReadTimeout(Integer socketReadTimeout) { this.socketReadTimeout = socketReadTimeout;}
-
-               public Integer getSocketConnectTimeout() {      return socketConnectTimeout;}
-
-               public void setSocketConnectTimeout(Integer socketConnectTimeout) { this.socketConnectTimeout = socketConnectTimeout;   }
-
-        public List<String> getCassandraHosts() {
-            return cassandraHosts;
-        }
-
-        public void setCassandraHosts(List<String> cassandraHosts) {
-            this.cassandraHosts = cassandraHosts;
-        }
-
-        public List<KeyspaceConfig> getKeySpaces() {
-            return keySpaces;
-        }
-
-        public void setKeySpaces(List<KeyspaceConfig> cassandraConfig) {
-            this.keySpaces = cassandraConfig;
-        }
-
-        public static class KeyspaceConfig {
-
-            String name;
-            String replicationStrategy;
-            List<String> replicationInfo;
-
-            public String getName() {
-                return name;
-            }
-
-            public void setName(String name) {
-                this.name = name;
-            }
-
-            public String getReplicationStrategy() {
-                return replicationStrategy;
-            }
-
-            public void setReplicationStrategy(String replicationStrategy) {
-                this.replicationStrategy = replicationStrategy;
-            }
-
-            public List<String> getReplicationInfo() {
-                return replicationInfo;
-            }
-
-            public void setReplicationInfo(List<String> replicationInfo) {
-                this.replicationInfo = replicationInfo;
-            }
-        }
-    }
-
-    public static class SwitchoverDetectorConfig {
-
-        String gBeFqdn;
-        String gFeFqdn;
-        String beVip;
-        String feVip;
-        int beResolveAttempts;
-        int feResolveAttempts;
-        Boolean enabled;
-        long interval;
-        String changePriorityUser;
-        String changePriorityPassword;
-        String publishNetworkUrl;
-        String publishNetworkBody;
-        Map<String, GroupInfo> groups;
-
-        public String getgBeFqdn() {
-            return gBeFqdn;
-        }
-
-        public void setgBeFqdn(String gBeFqdn) {
-            this.gBeFqdn = gBeFqdn;
-        }
-
-        public String getgFeFqdn() {
-            return gFeFqdn;
-        }
-
-        public void setgFeFqdn(String gFeFqdn) {
-            this.gFeFqdn = gFeFqdn;
-        }
-
-        public String getBeVip() {
-            return beVip;
-        }
-
-        public void setBeVip(String beVip) {
-            this.beVip = beVip;
-        }
-
-        public String getFeVip() {
-            return feVip;
-        }
-
-        public void setFeVip(String feVip) {
-            this.feVip = feVip;
-        }
-
-        public int getBeResolveAttempts() {
-            return beResolveAttempts;
-        }
-
-        public void setBeResolveAttempts(int beResolveAttempts) {
-            this.beResolveAttempts = beResolveAttempts;
-        }
-
-        public int getFeResolveAttempts() {
-            return feResolveAttempts;
-        }
-
-        public void setFeResolveAttempts(int feResolveAttempts) {
-            this.feResolveAttempts = feResolveAttempts;
-        }
-
-        public Boolean getEnabled() {
-            return enabled;
-        }
-
-        public void setEnabled(Boolean enabled) {
-            this.enabled = enabled;
-        }
-
-        public long getInterval() {
-            return interval;
-        }
-
-        public void setInterval(long interval) {
-            this.interval = interval;
-        }
-
-        public String getChangePriorityUser() {
-            return changePriorityUser;
-        }
-
-        public void setChangePriorityUser(String changePriorityUser) {
-            this.changePriorityUser = changePriorityUser;
-        }
-
-        public String getChangePriorityPassword() {
-            return changePriorityPassword;
-        }
-
-        public void setChangePriorityPassword(String changePriorityPassword) {
-            this.changePriorityPassword = changePriorityPassword;
-        }
-
-        public String getPublishNetworkUrl() {
-            return publishNetworkUrl;
-        }
-
-        public void setPublishNetworkUrl(String publishNetworkUrl) {
-            this.publishNetworkUrl = publishNetworkUrl;
-        }
-
-        public String getPublishNetworkBody() {
-            return publishNetworkBody;
-        }
-
-        public void setPublishNetworkBody(String publishNetworkBody) {
-            this.publishNetworkBody = publishNetworkBody;
-        }
-
-        public Map<String, GroupInfo> getGroups() {
-            return groups;
-        }
-
-        public void setGroups(Map<String, GroupInfo> groups) {
-            this.groups = groups;
-        }
-
-        public static class GroupInfo {
-
-            String changePriorityUrl;
-            String changePriorityBody;
-
-            public String getChangePriorityUrl() {
-                return changePriorityUrl;
-            }
-
-            public void setChangePriorityUrl(String changePriorityUrl) {
-                this.changePriorityUrl = changePriorityUrl;
-            }
-
-            public String getChangePriorityBody() {
-                return changePriorityBody;
-            }
-
-            public void setChangePriorityBody(String changePriorityBody) {
-                this.changePriorityBody = changePriorityBody;
-            }
-        }
-
-    }
-
-    public static class BeMonitoringConfig {
-
-        Boolean enabled;
-        Boolean isProxy;
-        Integer probeIntervalInSeconds;
-
-        public Boolean getEnabled() {
-            return enabled;
-        }
-
-        public void setEnabled(Boolean enabled) {
-            this.enabled = enabled;
-        }
-
-        public Boolean getIsProxy() {
-            return isProxy;
-        }
-
-        public void setIsProxy(Boolean isProxy) {
-            this.isProxy = isProxy;
-        }
-
-        public Integer getProbeIntervalInSeconds() {
-            return probeIntervalInSeconds;
-        }
-
-        public Integer getProbeIntervalInSeconds(int defaultVal) {
-            return probeIntervalInSeconds == null ? defaultVal : probeIntervalInSeconds;
-        }
-
-        public void setProbeIntervalInSeconds(Integer probeIntervalInSeconds) {
-            this.probeIntervalInSeconds = probeIntervalInSeconds;
-        }
-    }
-
-    public static class ArtifactTypeConfig {
-
-        List<String> acceptedTypes;
-        List<String> validForResourceTypes;
-
-        public List<String> getValidForResourceTypes() {
-            return validForResourceTypes;
-        }
-
-        public void setValidForResourceTypes(List<String> validForResourceTypes) {
-            this.validForResourceTypes = validForResourceTypes;
-        }
-
-        public List<String> getAcceptedTypes() {
-            return acceptedTypes;
-        }
-
-        public void setAcceptedTypes(List<String> acceptedTypes) {
-            this.acceptedTypes = acceptedTypes;
-        }
-    }
-
-    public static class OnboardingConfig {
-
-        String protocol = "http";
-        String host;
-        Integer port;
-        String downloadCsarUri;
-        String healthCheckUri;
-
-        public String getProtocol() {
-            return protocol;
-        }
-
-        public void setProtocol(String protocol) {
-            this.protocol = protocol;
-        }
-
-        public String getHost() {
-            return host;
-        }
-
-        public void setHost(String host) {
-            this.host = host;
-        }
-
-        public Integer getPort() {
-            return port;
-        }
-
-        public void setPort(Integer port) {
-            this.port = port;
-        }
-
-        public String getDownloadCsarUri() {
-            return downloadCsarUri;
-        }
-
-        public void setDownloadCsarUri(String downloadCsarUri) {
-            this.downloadCsarUri = downloadCsarUri;
-        }
-
-        public String getHealthCheckUri() {
-            return healthCheckUri;
-        }
-
-        public void setHealthCheckUri(String healthCheckUri) {
-            this.healthCheckUri = healthCheckUri;
-        }
-
-        @Override
-        public String toString() {
-            return "OnboardingConfig [protocol=" + protocol + ", host=" + host + ", port=" + port + ", downloadCsarUri="
-                    + downloadCsarUri + "]";
-        }
-
-    }
-
-    public DcaeConfig getDcae() {
-        return dcae;
-    }
-
-    public void setDcae(DcaeConfig dcae) {
-        this.dcae = dcae;
-    }
-
-    public static class DcaeConfig {
-
-        String protocol = "http";
-        String host;
-        Integer port;
-        String healthCheckUri;
-
-        public String getProtocol() {
-            return protocol;
-        }
-
-        public void setProtocol(String protocol) {
-            this.protocol = protocol;
-        }
-
-        public String getHost() {
-            return host;
-        }
-
-        public void setHost(String host) {
-            this.host = host;
-        }
-
-        public Integer getPort() {
-            return port;
-        }
-
-        public void setPort(Integer port) {
-            this.port = port;
-        }
-
-        public String getHealthCheckUri() {
-            return healthCheckUri;
-        }
-
-        public void setHealthCheckUri(String healthCheckUri) {
-            this.healthCheckUri = healthCheckUri;
-        }
-    }
-
-    public static class EcompPortalConfig {
-
-        private String defaultFunctionalMenu;
-
-        public String getDefaultFunctionalMenu() {
-            return defaultFunctionalMenu;
-        }
-
-        public void setDefaultFunctionalMenu(String defaultFunctionalMenu) {
-            this.defaultFunctionalMenu = defaultFunctionalMenu;
-        }
-
-        @Override
-        public String toString() {
-            return "EcompPortalConfig [defaultFunctionalMenu=" + defaultFunctionalMenu + "]";
-        }
-
-    }
-
-    public static class ApplicationL1CacheConfig {
-
-        ApplicationL1CacheInfo datatypes;
-
-        public ApplicationL1CacheInfo getDatatypes() {
-            return datatypes;
-        }
-
-        public void setDatatypes(ApplicationL1CacheInfo datatypes) {
-            this.datatypes = datatypes;
-        }
-
-        @Override
-        public String toString() {
-            return "ApplicationL1CacheConfig [datatypes=" + datatypes + "]";
-        }
-
-    }
-
-    public static class ApplicationL2CacheConfig {
-
-        boolean enabled;
-        ApplicationL1CacheCatalogInfo catalogL1Cache;
-
-        QueueInfo queue;
-
-        public boolean isEnabled() {
-            return enabled;
-        }
-
-        public void setEnabled(boolean enabled) {
-            this.enabled = enabled;
-        }
-
-        public ApplicationL1CacheCatalogInfo getCatalogL1Cache() {
-            return catalogL1Cache;
-        }
-
-        public void setCatalogL1Cache(ApplicationL1CacheCatalogInfo catalogL1Cache) {
-            this.catalogL1Cache = catalogL1Cache;
-        }
-
-        public QueueInfo getQueue() {
-            return queue;
-        }
-
-        public void setQueue(QueueInfo queue) {
-            this.queue = queue;
-        }
-
-        @Override
-        public String toString() {
-            return "ApplicationL2CacheConfig [enabled=" + enabled + ", catalogL1Cache=" + catalogL1Cache + "]";
-        }
-
-    }
-
-    public static class ToscaValidatorsConfig {
-
-        private Integer stringMaxLength;
-
-        public Integer getStringMaxLength() {
-            return stringMaxLength;
-        }
-
-        public void setStringMaxLength(Integer stringMaxLength) {
-            this.stringMaxLength = stringMaxLength;
-        }
-
-        @Override
-        public String toString() {
-            return "ToscaValidatorsConfig [stringMaxLength=" + stringMaxLength + "]";
-        }
-
-    }
-
-    public static class ApplicationL1CacheInfo {
-
-        Boolean enabled;
-        Integer firstRunDelay;
-        Integer pollIntervalInSec;
-
-        public Boolean getEnabled() {
-            return enabled;
-        }
-
-        public void setEnabled(Boolean enabled) {
-            this.enabled = enabled;
-        }
-
-        public Integer getFirstRunDelay() {
-            return firstRunDelay;
-        }
-
-        public void setFirstRunDelay(Integer firstRunDelay) {
-            this.firstRunDelay = firstRunDelay;
-        }
-
-        public Integer getPollIntervalInSec() {
-            return pollIntervalInSec;
-        }
-
-        public void setPollIntervalInSec(Integer pollIntervalInSec) {
-            this.pollIntervalInSec = pollIntervalInSec;
-        }
-
-        @Override
-        public String toString() {
-            return "ApplicationL1CacheInfo [enabled=" + enabled + ", firstRunDelay=" + firstRunDelay
-                    + ", pollIntervalInSec=" + pollIntervalInSec + "]";
-        }
-    }
-
-    public static class ApplicationL1CacheCatalogInfo {
-
-        Boolean enabled;
-        Integer resourcesSizeInCache;
-        Integer servicesSizeInCache;
-        Integer productsSizeInCache;
-
-        public Boolean getEnabled() {
-            return enabled;
-        }
-
-        public void setEnabled(Boolean enabled) {
-            this.enabled = enabled;
-        }
-
-        public Integer getResourcesSizeInCache() {
-            return resourcesSizeInCache;
-        }
-
-        public void setResourcesSizeInCache(Integer resourcesSizeInCache) {
-            this.resourcesSizeInCache = resourcesSizeInCache;
-        }
-
-        public Integer getServicesSizeInCache() {
-            return servicesSizeInCache;
-        }
-
-        public void setServicesSizeInCache(Integer servicesSizeInCache) {
-            this.servicesSizeInCache = servicesSizeInCache;
-        }
-
-        public Integer getProductsSizeInCache() {
-            return productsSizeInCache;
-        }
-
-        public void setProductsSizeInCache(Integer productsSizeInCache) {
-            this.productsSizeInCache = productsSizeInCache;
-        }
-
-        @Override
-        public String toString() {
-            return "ApplicationL1CacheCatalogInfo [enabled=" + enabled + ", resourcesSizeInCache="
-                    + resourcesSizeInCache + ", servicesSizeInCache=" + servicesSizeInCache + ", productsSizeInCache="
-                    + productsSizeInCache + "]";
-        }
-
-    }
-
-    public static class QueueInfo {
-        Integer numberOfCacheWorkers;
-        Integer waitOnShutDownInMinutes;
-        Integer syncIntervalInSecondes;
-
-        public Integer getWaitOnShutDownInMinutes() {
-            return waitOnShutDownInMinutes;
-        }
-
-        public void setWaitOnShutDownInMinutes(Integer waitOnShutDownInMinutes) {
-            this.waitOnShutDownInMinutes = waitOnShutDownInMinutes;
-        }
-
-        public Integer getSyncIntervalInSecondes() {
-            return syncIntervalInSecondes;
-        }
-
-        public void setSyncIntervalInSecondes(Integer syncIntervalInSecondes) {
-            this.syncIntervalInSecondes = syncIntervalInSecondes;
-        }
-
-        public Integer getNumberOfCacheWorkers() {
-            return numberOfCacheWorkers;
-        }
-
-        public void setNumberOfCacheWorkers(Integer numberOfCacheWorkers) {
-            this.numberOfCacheWorkers = numberOfCacheWorkers;
-        }
-
-        @Override
-        public String toString() {
-            return "QueueInfo[" + "waitOnShutDownInMinutes=" + waitOnShutDownInMinutes + ", syncIntervalInSecondes="
-                    + syncIntervalInSecondes + ", numberOfCacheWorkers=" + this.numberOfCacheWorkers + ']';
-        }
-    }
-
-    public static class EnvironmentContext {
-
-        String defaultValue;
-        List<String> validValues;
-
-        public String getDefaultValue() {
-            return defaultValue;
-        }
-
-        public void setDefaultValue(String defaultValue) {
-            this.defaultValue = defaultValue;
-        }
-
-        public List<String> getValidValues() {
-            return validValues;
-        }
-
-        public void setValidValues(List<String> validValues) {
-            this.validValues = validValues;
-        }
-    }
-
-
-
-    public CleanComponentsConfiguration getCleanComponentsConfiguration() {
-        return cleanComponentsConfiguration;
-    }
-
-    public void setCleanComponentsConfiguration(CleanComponentsConfiguration cleanComponentsConfiguration) {
-        this.cleanComponentsConfiguration = cleanComponentsConfiguration;
-    }
-
-    @Override
-    public String toString() {
-        return new StringBuilder().append(format("backend host: %s%n", beFqdn))
-                .append(format("backend http port: %s%n", beHttpPort))
-                .append(format("backend ssl port: %s%n", beSslPort)).append(format("backend context: %s%n", beContext))
-                .append(format("backend protocol: %s%n", beProtocol)).append(format("Version: %s%n", version))
-                .append(format("Released: %s%n", released)).append(format("Supported protocols: %s%n", protocols))
-                .append(format("Users: %s%n", users)).append(format("Neo4j: %s%n", neo4j))
-                .append(format("ElasticSearch: %s%n", elasticSearch))
-                .append(format("Titan Cfg File: %s%n", titanCfgFile))
-                .append(format("Titan In memory: %s%n", titanInMemoryGraph))
-                .append(format("Titan lock timeout: %s%n", titanLockTimeout))
-                .append(format("Titan reconnect interval seconds: %s%n", titanReconnectIntervalInSeconds))
-                .append(format("excludeResourceCategory: %s%n", excludeResourceCategory))
-                .append(format("informationalResourceArtifacts: %s%n", informationalResourceArtifacts))
-                .append(format("deploymentResourceArtifacts: %s%n", deploymentResourceArtifacts))
-                .append(format("informationalServiceArtifacts: %s%n", informationalServiceArtifacts))
-                .append(format("Supported artifacts types: %s%n", artifactTypes))
-                .append(format("Supported license types: %s%n", licenseTypes))
-                .append(format("Additional information Maximum number of preoperties: %s%n",
-                        additionalInformationMaxNumberOfKeys))
-                .append(format("Default Heat Artifact Timeout in Minutes: %s%n", defaultHeatArtifactTimeoutMinutes))
-                .append(format("URLs For HTTP Requests that will not be automatically logged : %s%n", unLoggedUrls))
-                .append(format("Service Api Artifacts: %s%n", serviceApiArtifacts))
-                .append(format("heat env artifact header: %s%n", heatEnvArtifactHeader))
-                .append(format("heat env artifact footer: %s%n", heatEnvArtifactFooter))
-                               .append(format("onboarding: %s%n", onboarding))
-                               .append(format("tosca conformance level: %s%n", toscaConformanceLevel))
-                               .toString();
-    }
-
-    public List<String> getUnLoggedUrls() {
-        return unLoggedUrls;
-    }
-
-    public void setUnLoggedUrls(List<String> unLoggedUrls) {
-        this.unLoggedUrls = unLoggedUrls;
-    }
-
-    public Map<String, Object> getDeploymentResourceArtifacts() {
-        return deploymentResourceArtifacts;
-    }
-
-    public void setDeploymentResourceArtifacts(Map<String, Object> deploymentResourceArtifacts) {
-        this.deploymentResourceArtifacts = deploymentResourceArtifacts;
-    }
-
-    public String getHeatEnvArtifactHeader() {
-        return heatEnvArtifactHeader;
-    }
-
-    public void setHeatEnvArtifactHeader(String heatEnvArtifactHeader) {
-        this.heatEnvArtifactHeader = heatEnvArtifactHeader;
-    }
-
-    public String getHeatEnvArtifactFooter() {
-        return heatEnvArtifactFooter;
-    }
-
-    public void setHeatEnvArtifactFooter(String heatEnvArtifactFooter) {
-        this.heatEnvArtifactFooter = heatEnvArtifactFooter;
-    }
-
-    public Map<String, Object> getDeploymentResourceInstanceArtifacts() {
-        return deploymentResourceInstanceArtifacts;
-    }
-
-    public void setDeploymentResourceInstanceArtifacts(Map<String, Object> deploymentResourceInstanceArtifacts) {
-        this.deploymentResourceInstanceArtifacts = deploymentResourceInstanceArtifacts;
-    }
-
-    public String getArtifactsIndex() {
-        return artifactsIndex;
-    }
-
-    public void setArtifactsIndex(String artifactsIndex) {
-        this.artifactsIndex = artifactsIndex;
-    }
-
-    public Map<String, ArtifactTypeConfig> getResourceInformationalDeployedArtifacts() {
-        return resourceInformationalDeployedArtifacts;
-    }
-
-    public void setResourceInformationalDeployedArtifacts(
-            Map<String, ArtifactTypeConfig> resourceInformationalDeployedArtifacts) {
-        this.resourceInformationalDeployedArtifacts = resourceInformationalDeployedArtifacts;
-    }
-
-    public List<String> getResourceTypes() {
-        return resourceTypes;
-    }
-
-    public void setResourceTypes(List<String> resourceTypes) {
-        this.resourceTypes = resourceTypes;
-    }
-
-    public String getToscaFilesDir() {
-        return toscaFilesDir;
-    }
-
-    public void setToscaFilesDir(String toscaFilesDir) {
-        this.toscaFilesDir = toscaFilesDir;
-    }
-
-    public String getHeatTranslatorPath() {
-        return heatTranslatorPath;
-    }
-
-    public void setHeatTranslatorPath(String heatTranslatorPath) {
-        this.heatTranslatorPath = heatTranslatorPath;
-    }
-
-    public Map<String, Set<String>> getRequirementsToFulfillBeforeCert() {
-        return requirementsToFulfillBeforeCert;
-    }
-
-    public void setRequirementsToFulfillBeforeCert(Map<String, Set<String>> requirementsToFulfillBeforeCert) {
-        this.requirementsToFulfillBeforeCert = requirementsToFulfillBeforeCert;
-    }
-
-    public Map<String, Set<String>> getCapabilitiesToConsumeBeforeCert() {
-        return capabilitiesToConsumeBeforeCert;
-    }
-
-    public void setCapabilitiesToConsumeBeforeCert(Map<String, Set<String>> capabilitiesToConsumeBeforeCert) {
-        this.capabilitiesToConsumeBeforeCert = capabilitiesToConsumeBeforeCert;
-    }
-
-    public OnboardingConfig getOnboarding() {
-        return onboarding;
-    }
-
-    public void setOnboarding(OnboardingConfig onboarding) {
-        this.onboarding = onboarding;
-    }
-
-    public EcompPortalConfig getEcompPortal() {
-        return ecompPortal;
-    }
-
-    public void setEcompPortal(EcompPortalConfig ecompPortal) {
-        this.ecompPortal = ecompPortal;
-    }
-
-    public ToscaValidatorsConfig getToscaValidators() {
-        return toscaValidators;
-    }
-
-    public void setToscaValidators(ToscaValidatorsConfig toscaValidators) {
-        this.toscaValidators = toscaValidators;
-    }
-
-    public boolean isDisableAudit() {
-        return disableAudit;
-    }
-
-    public void setDisableAudit(boolean enableAudit) {
-        this.disableAudit = enableAudit;
-    }
-
-    public Map<String, ArtifactTypeConfig> getResourceInformationalArtifacts() {
-        return resourceInformationalArtifacts;
-    }
-
-    public void setResourceInformationalArtifacts(Map<String, ArtifactTypeConfig> resourceInformationalArtifacts) {
-        this.resourceInformationalArtifacts = resourceInformationalArtifacts;
-    }
-
-    public Map<String, VfModuleProperty> getVfModuleProperties() {
-        return vfModuleProperties;
-    }
-
-    public void setVfModuleProperties(Map<String, VfModuleProperty> vfModuleProperties) {
-        this.vfModuleProperties = vfModuleProperties;
-    }
-
-    public String getToscaConformanceLevel() {
-        return toscaConformanceLevel;
-    }
-
-    public void setToscaConformanceLevel(String toscaConformanceLevel) {
-        this.toscaConformanceLevel = toscaConformanceLevel;
-    }
-
-    public String getMinToscaConformanceLevel() {
-        return minToscaConformanceLevel;
-    }
-
-    public void setMinToscaConformanceLevel(String toscaConformanceLevel) {
-        this.minToscaConformanceLevel = toscaConformanceLevel;
-    }
-
-    public static class VfModuleProperty {
-        private String forBaseModule;
-        private String forNonBaseModule;
-        public String getForBaseModule() {
-            return forBaseModule;
-        }
-        public void setForBaseModule(String forBaseModule) {
-            this.forBaseModule = forBaseModule;
-        }
-        public String getForNonBaseModule() {
-            return forNonBaseModule;
-        }
-        public void setForNonBaseModule(String forNonBaseModule) {
-            this.forNonBaseModule = forNonBaseModule;
-        }
-    }
-
-    public List<Map<String, Map<String, String>>> getDefaultImports() {
-        return defaultImports;
-    }
-
-    public void setDefaultImports(List<Map<String, Map<String, String>>> defaultImports) {
-        this.defaultImports = defaultImports;
-    }
-
-    public Map<String, List<String>> getResourcesForUpgrade() {
-        return resourcesForUpgrade;
-    }
-
-    public void setResourcesForUpgrade(Map<String, List<String>> resourcesForUpgrade) {
-        this.resourcesForUpgrade = resourcesForUpgrade;
-    }
-
-    @SuppressWarnings("unchecked")
-    public static <K,V> Map<K,V> safeGetCapsInsensitiveMap(Map<K,V> map) {
-        return map == null ? emptyMap() : new CaseInsensitiveMap(map);
-    }
-
-
-    public List<String> getHealthStatusExclude() {
-        return healthStatusExclude;
-    }
+    @Getter
+    @Setter
+    @NoArgsConstructor
+    public static class CustomToscaFunction {
 
-    public void setHealthStatusExclude(List<String> healthStatusExclude) {
-        this.healthStatusExclude = healthStatusExclude;
+        private String name;
+        private String type;
     }
 
 }