summaryrefslogtreecommitdiffstats
path: root/appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java
diff options
context:
space:
mode:
Diffstat (limited to 'appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java')
-rw-r--r--appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java53
1 files changed, 42 insertions, 11 deletions
diff --git a/appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java b/appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java
index c30f05033..40fcf1a53 100644
--- a/appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java
+++ b/appc-config/appc-encryption-tool/provider/src/main/java/org/onap/appc/encryptiontool/wrapper/EncryptionToolDGWrapper.java
@@ -9,15 +9,15 @@
* 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.
- *
+ *
* ECOMP is a trademark and service mark of AT&T Intellectual Property.
* ============LICENSE_END=========================================================
*/
@@ -48,7 +48,7 @@ public class EncryptionToolDGWrapper implements SvcLogicJavaPlugin {
throw new SvcLogicException("username or Password is missing");
}
- String[] input = new String[] {vnfType, userName, password};
+ String[] input = new String[] { vnfType, userName, password };
WrapperEncryptionTool.main(input);
} catch (Exception e) {
@@ -59,16 +59,47 @@ public class EncryptionToolDGWrapper implements SvcLogicJavaPlugin {
public void getProperty(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
String responsePrefix = inParams.get("prefix");
- String propertyName = inParams.get("propertyName");
-
+ String vnf_Type = ctx.getAttribute("vnf-type");
+ String action = ctx.getAttribute("input.action");
+ String protocol = ctx.getAttribute("APPC.protocol.PROTOCOL");
try {
responsePrefix = StringUtils.isNotBlank(responsePrefix) ? (responsePrefix + ".") : "";
- PropertiesConfiguration conf =
- new PropertiesConfiguration(Constants.APPC_CONFIG_DIR + "/appc_southbound.properties");
+ PropertiesConfiguration conf = new PropertiesConfiguration(
+ Constants.APPC_CONFIG_DIR + "/appc_southbound.properties");
conf.setBasePath(null);
EncryptionTool et = EncryptionTool.getInstance();
-
- ctx.setAttribute(responsePrefix + "propertyName", et.decrypt(conf.getProperty(propertyName).toString()));
+ log.info("responsePrefix:"+responsePrefix);
+ log.debug("key:"+vnf_Type+"."+protocol+"."+action);
+ if(StringUtils.isNotBlank(vnf_Type) && StringUtils.isNotBlank(protocol) && StringUtils.isNotBlank(action))
+ {
+ String user = (String)conf.getProperty(vnf_Type + "." + protocol + "." + action + "." + "user");
+ String password = (String)conf.getProperty(vnf_Type + "." + protocol + "." + action + "." + "password");
+ String port = (String)conf.getProperty(vnf_Type + "." + protocol + "." + action + "." + "port");
+ String url = (String)conf.getProperty(vnf_Type + "." + protocol + "." + action + "." + "url");
+ if (StringUtils.isBlank(user) || StringUtils.isBlank(password)) {
+ throw new SvcLogicException("Error-while fetching user or password");
+ }
+ if ( (user.startsWith("[") && user.endsWith("]")) || (password.startsWith("[") && password.endsWith("]"))|| (port.startsWith("[") && port.endsWith("]"))||(url.startsWith("[") && url.endsWith("]")) )
+ {
+ throw new SvcLogicException("Duplicate entries found for key "+vnf_Type + "." + protocol + "." + action +"in properties File");
+ }
+ if (StringUtils.isNotBlank(user))
+ ctx.setAttribute(responsePrefix + "user", user);
+ if (StringUtils.isNotBlank(password))
+ ctx.setAttribute(responsePrefix + "password", et.decrypt(password));
+ if (StringUtils.isNotBlank(url))
+ ctx.setAttribute(responsePrefix + "url", url);
+ if (StringUtils.isNotBlank(port))
+ ctx.setAttribute(responsePrefix + "port", port);
+ log.debug(ctx.getAttribute(responsePrefix + "user"));
+ log.debug(ctx.getAttribute(responsePrefix + "password"));
+ log.debug(ctx.getAttribute(responsePrefix + "url"));
+ log.debug(ctx.getAttribute(responsePrefix + "port"));
+ }
+ else
+ {
+ throw new SvcLogicException("Error-as any of properties such as vnf-type,protocol,action are missing in ctx");
+ }
} catch (Exception e) {
ctx.setAttribute(responsePrefix + "status", "failure");
ctx.setAttribute(responsePrefix + "error-message", e.getMessage());
@@ -76,4 +107,4 @@ public class EncryptionToolDGWrapper implements SvcLogicJavaPlugin {
throw new SvcLogicException(e.getMessage());
}
}
-}
+} \ No newline at end of file