private Connector createRedirectConnector(int redirectSecuredPort) {
if (redirectSecuredPort <= 0) {
eelfLogger.warn(
- "HTTP port redirection to HTTPS is disabled because the HTTPS port is 0 (random port) or -1 (Connector disabled)");
+ "HTTP port redirection to HTTPS is disabled because the HTTPS port is 0 (random port) or -1"
+ + " (Connector disabled)");
return null;
}
Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
Date startTime = new Date();\r
LoggingUtils.setTargetContext("DCAE", "getOperationStatus");\r
try {\r
- String responseStr = dcaeHttpConnectionManager.doHttpRequest(statusUrl, "GET", null, null, "DCAE", null, null);\r
+ String responseStr = dcaeHttpConnectionManager.doHttpRequest(statusUrl, "GET", null,\r
+ null, "DCAE", null,\r
+ null);\r
JSONObject jsonObj = parseResponse(responseStr);\r
String operationType = (String) jsonObj.get("operationType");\r
String status = (String) jsonObj.get(DCAE_STATUS_FIELD);\r
\r
/***\r
* Returns status URL for deleteExistingDeployment operation.\r
+ *\r
* @param deploymentId\r
* The deployment ID\r
* @param serviceTypeId\r
*/\r
@Autowired\r
public DcaeInventoryServices(ClampProperties refProp, CldsDao cldsDao,\r
- HttpConnectionManager httpConnectionManager) {\r
+ HttpConnectionManager httpConnectionManager) {\r
this.refProp = refProp;\r
this.cldsDao = cldsDao;\r
this.httpConnectionManager = httpConnectionManager;\r
}\r
try {\r
// Below are the properties required for calling the dcae inventory\r
- ModelProperties prop = new ModelProperties(cldsModel.getName(), cldsModel.getControlName(), null, false,\r
- "{}", cldsModel.getPropText());\r
+ ModelProperties prop = new ModelProperties(cldsModel.getName(), cldsModel.getControlName(), null,\r
+ false, "{}", cldsModel.getPropText());\r
Global global = prop.getGlobal();\r
String invariantServiceUuid = global.getService();\r
List<String> resourceUuidList = global.getResourceVf();\r
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
import com.att.eelf.configuration.EELFLogger;
import com.att.eelf.configuration.EELFManager;
-import java.io.UnsupportedEncodingException;
-
import org.apache.camel.Exchange;
import org.apache.camel.Handler;
import org.onap.clamp.clds.client.req.policy.GuardPolicyAttributesConstructor;
import org.onap.clamp.clds.client.req.policy.PolicyClient;
-import org.onap.clamp.clds.config.ClampProperties;
import org.onap.clamp.clds.model.properties.ModelProperties;
import org.onap.clamp.clds.model.properties.Policy;
import org.onap.clamp.clds.model.properties.PolicyChain;
import org.onap.clamp.clds.model.properties.PolicyItem;
import org.onap.clamp.clds.util.LoggingUtils;
-import org.onap.policy.controlloop.policy.builder.BuilderException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
protected static final EELFLogger logger = EELFManager.getInstance().getLogger(GuardPolicyDelegate.class);
protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger();
private final PolicyClient policyClient;
- private final ClampProperties refProp;
@Autowired
- public GuardPolicyDelegate(PolicyClient policyClient, ClampProperties refProp) {
+ public GuardPolicyDelegate(PolicyClient policyClient) {
this.policyClient = policyClient;
- this.refProp = refProp;
}
/**
* Perform activity. Send Guard Policies info to policy api.
*
- * @param camelExchange
- * The Camel Exchange object containing the properties
- * @throws BuilderException
- * In case of issues with OperationalPolicyRequestAttributesConstructor
- * @throws UnsupportedEncodingException
- * In case of issues with the Charset encoding
+ * @param camelExchange The Camel Exchange object containing the properties
*/
@Handler
- public void execute(Exchange camelExchange) throws BuilderException, UnsupportedEncodingException {
+ public void execute(Exchange camelExchange) {
ModelProperties prop = ModelProperties.create(camelExchange);
Policy policy = prop.getType(Policy.class);
if (policy.isFound()) {
for (PolicyChain policyChain : prop.getType(Policy.class).getPolicyChains()) {
- for (PolicyItem policyItem:GuardPolicyAttributesConstructor
+ for (PolicyItem policyItem : GuardPolicyAttributesConstructor
.getAllPolicyGuardsFromPolicyChain(policyChain)) {
prop.setCurrentModelElementId(policy.getId());
prop.setPolicyUniqueId(policyChain.getPolicyId());
prop.setGuardUniqueId(policyItem.getId());
policyClient.sendGuardPolicy(GuardPolicyAttributesConstructor
- .formatAttributes(prop, policyItem), prop, LoggingUtils.getRequestId(), policyItem);
+ .formatAttributes(prop, policyItem), prop, LoggingUtils.getRequestId(), policyItem);
}
}
}
}
-
-
}
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
import org.apache.camel.Handler;
import org.onap.clamp.clds.client.req.policy.GuardPolicyAttributesConstructor;
import org.onap.clamp.clds.client.req.policy.PolicyClient;
-import org.onap.clamp.clds.config.ClampProperties;
import org.onap.clamp.clds.model.CldsEvent;
import org.onap.clamp.clds.model.properties.ModelProperties;
import org.onap.clamp.clds.model.properties.Policy;
public class GuardPolicyDeleteDelegate {
protected static final EELFLogger logger = EELFManager.getInstance()
- .getLogger(GuardPolicyDeleteDelegate.class);
+ .getLogger(GuardPolicyDeleteDelegate.class);
protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger();
private final PolicyClient policyClient;
- private final ClampProperties refProp;
@Autowired
- public GuardPolicyDeleteDelegate(PolicyClient policyClient, ClampProperties refProp) {
+ public GuardPolicyDeleteDelegate(PolicyClient policyClient) {
this.policyClient = policyClient;
- this.refProp = refProp;
}
+
/**
* Perform activity. Delete Operational Policy via policy api.
*
- * @param camelExchange
- * The Camel Exchange object containing the properties
+ * @param camelExchange The Camel Exchange object containing the properties
*/
@Handler
public void execute(Exchange camelExchange) {
String eventAction = (String) camelExchange.getProperty("eventAction");
if (!eventAction.equalsIgnoreCase(CldsEvent.ACTION_CREATE) && policy.isFound()) {
for (PolicyChain policyChain : prop.getType(Policy.class).getPolicyChains()) {
- for (PolicyItem policyItem:GuardPolicyAttributesConstructor
+ for (PolicyItem policyItem : GuardPolicyAttributesConstructor
.getAllPolicyGuardsFromPolicyChain(policyChain)) {
prop.setCurrentModelElementId(policy.getId());
prop.setPolicyUniqueId(policyChain.getPolicyId());
}
}
}
-
}
@Override
public boolean activateServerTLSAuth() {
- if (jsonRootNode != null && jsonRootNode.get(ACTIVATE_SERVER_TLS_AUTH) != null &&
- jsonRootNode.get(ACTIVATE_SERVER_TLS_AUTH).isJsonPrimitive()) {
+ if (jsonRootNode != null && jsonRootNode.get(ACTIVATE_SERVER_TLS_AUTH) != null
+ && jsonRootNode.get(ACTIVATE_SERVER_TLS_AUTH).isJsonPrimitive()) {
return jsonRootNode.get(ACTIVATE_SERVER_TLS_AUTH).getAsBoolean();
} else {
return false;
/**
* Clds Identity database DataSource configuration.
*
- * @return
+ * @return encoded password data source
*/
@Bean(name = "cldsDataSource")
@ConfigurationProperties(prefix = "spring.datasource.cldsdb")
@Autowired
protected CsarInstaller csarInstaller;
+ /**
+ * Loads SDC controllers configuration.
+ */
@PostConstruct
public void loadSdcControllers() {
SdcControllersConfiguration sdcControllersConfig = getSdcControllersConfiguration();
});
}
+ /**
+ * Checks whether all SDC controllers defined are up and running.
+ */
@Scheduled(fixedRate = 120000)
public void checkAllSdcControllers() {
logger.info("Checking that all SDC Controllers defined are up and running");
logger.info("SDC Controllers check completed");
}
+ /**
+ * Closes all SDC Controller and the SDC Client.
+ */
@PreDestroy
public void killSdcControllers() {
sdcControllersList.forEach(e -> {
@Autowired
protected CsarInstaller csarInstaller;
+ /**
+ * Loads SDC controller configuration.
+ */
@PostConstruct
public void loadSdcControllers() {
SdcControllersConfiguration sdcControllersConfig = getSdcControllersConfiguration();
});
}
+ /**
+ * Checks whether all SDC controllers defined are up and running.
+ */
@Scheduled(fixedRate = 120000)
public void checkAllSdcControllers() {
logger.info("Checking that all SDC Controllers defined are up and running");
logger.info("SDC Controllers check completed");
}
+ /**
+ * Closes all SDC Controller and the SDC Client.
+ */
@PreDestroy
public void killSdcControllers() {
sdcControllersList.forEach(e -> {
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
List<CldsToscaModel> cldsToscaModels = new ArrayList<>();
- String toscaModelSql = new StringBuilder("SELECT tm.tosca_model_name, tm.tosca_model_id, tm.policy_type, " +
- "tmr.tosca_model_revision_id, tmr.tosca_model_json, tmr.version, tmr.user_id, tmr.createdTimestamp, " +
- "tmr.lastUpdatedTimestamp")
- .append(toscaModelName != null ? (", tmr.tosca_model_yaml") : "")
+ String toscaModelSql = new StringBuilder("SELECT tm.tosca_model_name, tm.tosca_model_id, tm.policy_type, "
+ + "tmr.tosca_model_revision_id, tmr.tosca_model_json, tmr.version, tmr.user_id, tmr.createdTimestamp,"
+ + "tmr.lastUpdatedTimestamp").append(toscaModelName != null ? (", tmr.tosca_model_yaml") : "")
.append(" FROM tosca_model tm, tosca_model_revision tmr WHERE tm.tosca_model_id = tmr.tosca_model_id")
.append(toscaModelName != null ? (" AND tm.tosca_model_name = '" + toscaModelName + "'") : "")
.append(policyType != null ? (" AND tm.policy_type = '" + policyType + "'") : "")
- .append(" AND tmr.version = (select max(version) from tosca_model_revision st where tmr.tosca_model_id=st.tosca_model_id)")
+ .append(" AND tmr.version = (select max(version) from tosca_model_revision st where tmr.tosca_model_id"
+ + "=st.tosca_model_id)")
.toString();
List<Map<String, Object>> rows = jdbcTemplateObject.queryForList(toscaModelSql);
String whereFilter = " WHERE ";
if (dictionaryName != null) {
whereFilter += "dictionary_name = '" + dictionaryName + "'";
- if (dictionaryId != null){
+ if (dictionaryId != null) {
whereFilter += " AND dictionary_id = '" + dictionaryId + "'";
}
} else if (dictionaryId != null) {
} else {
whereFilter = "";
}
- String dictionarySql = new StringBuilder("SELECT dictionary_id, dictionary_name, created_by, " +
- "modified_by, timestamp FROM dictionary")
+ String dictionarySql = new StringBuilder("SELECT dictionary_id, dictionary_name, created_by, "
+ + "modified_by, timestamp FROM dictionary")
.append(whereFilter).toString();
List<Map<String, Object>> rows = jdbcTemplateObject.queryForList(dictionarySql);
public class BadRequestException extends RuntimeException {
/**
- *
- */
- private static final long serialVersionUID = -5738167530541646123L;
+ * The serial version ID.
+ */
+ private static final long serialVersionUID = -5738167530541646123L;
- /**
+ /**
* This constructor can be used to create a new CldsConfigException.
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public BadRequestException(String message, Throwable e) {
- super(message, e);
+ public BadRequestException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class CldsConfigException extends RuntimeException {
/**
- *
+ * The serial version ID.
*/
private static final long serialVersionUID = 5958873136187918505L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public CldsConfigException(String message, Throwable e) {
- super(message, e);
+ public CldsConfigException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class CldsUsersException extends RuntimeException {
/**
- *
+ * The serial version ID.
*/
private static final long serialVersionUID = 933535057227505342L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public CldsUsersException(String message, Throwable e) {
- super(message, e);
+ public CldsUsersException(String message, Throwable ex) {
+ super(message, ex);
}
/**
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public ModelBpmnException(String message, Throwable e) {
- super(message, e);
+ public ModelBpmnException(String message, Throwable ex) {
+ super(message, ex);
}
/**
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public ModelPropertiesException(String message, Throwable e) {
- super(message, e);
+ public ModelPropertiesException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class NotAuthorizedException extends RuntimeException {
/**
- *
+ * The serial version ID.
*/
private static final long serialVersionUID = -5738167530541646123L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public NotAuthorizedException(String message, Throwable e) {
- super(message, e);
+ public NotAuthorizedException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class TcaRequestFormatterException extends RuntimeException {
/**
- *
+ * The serial version ID.
*/
private static final long serialVersionUID = 169875373143236667L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public TcaRequestFormatterException(String message, Throwable e) {
- super(message, e);
+ public TcaRequestFormatterException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class DcaeDeploymentException extends RuntimeException {
/**
- * Generated ID
+ * Generated ID.
*/
private static final long serialVersionUID = 8452294782552680243L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public DcaeDeploymentException(String message, Throwable e) {
- super(message, e);
+ public DcaeDeploymentException(String message, Throwable ex) {
+ super(message, ex);
}
/**
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public PolicyClientException(String message, Throwable e) {
- super(message, e);
+ public PolicyClientException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class SdcCommunicationException extends RuntimeException {
/**
- * Generated ID
+ * Generated ID.
*/
private static final long serialVersionUID = 8452294782552680243L;
*
* @param message
* A string message detailing the problem
- * @param e
+ * @param ex
* The exception sent by the code
*/
- public SdcCommunicationException(String message, Throwable e) {
- super(message, e);
+ public SdcCommunicationException(String message, Throwable ex) {
+ super(message, ex);
}
/**
public class CsarHandlerException extends Exception {
/**
- *
+ * The serial version ID.
*/
private static final long serialVersionUID = -7628640776124409155L;
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new CsarHandlerException.
+ *
+ * @param message The message to dump
*/
public CsarHandlerException(final String message) {
super(message);
}
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new CsarHandlerException.
+ *
+ * @param message The message to dump
+ * @param cause The Throwable cause object
*/
public CsarHandlerException(final String message, final Throwable cause) {
super(message, cause);
private static final long serialVersionUID = 4095937499475915021L;
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcArtifactInstallerException.
+ *
+ * @param message The message to dump
*/
public SdcArtifactInstallerException(final String message) {
super(message);
}
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcArtifactInstallerException.
+ *
+ * @param message The message to dump
+ * @param cause The Throwable cause object
*/
public SdcArtifactInstallerException(final String message, final Throwable cause) {
super(message, cause);
private static final long serialVersionUID = -4236006447255525130L;
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcControllerException.
+ *
+ * @param message The message to dump
*/
public SdcControllerException(final String message) {
super(message);
}
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcControllerException.
+ *
+ * @param message The message to dump
+ * @param cause The Throwable cause object
*/
public SdcControllerException(final String message, final Throwable cause) {
super(message, cause);
private static final long serialVersionUID = -5276848693231134901L;
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcDownloadException.
+ *
+ * @param message The message to dump
*/
public SdcDownloadException(final String message) {
super(message);
}
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcDownloadException.
+ *
+ * @param message The message to dump
+ * @param cause The Throwable cause object
*/
public SdcDownloadException(final String message, final Throwable cause) {
super(message, cause);
private static final long serialVersionUID = 8425657297510362736L;
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcParametersException.
+ *
+ * @param message The message to dump
*/
public SdcParametersException(final String message) {
super(message);
}
/**
- * @param message
- * The message to dump
- * @param cause
- * The Throwable cause object
+ * This constructor can be used to create a new SdcParametersException.
+ *
+ * @param message The message to dump
+ * @param cause The Throwable cause object
*/
public SdcParametersException(final String message, final Throwable cause) {
super(message, cause);
* ===================================================================
*
*/
+
package org.onap.clamp.clds.filter;
import com.att.eelf.configuration.EELFLogger;
* @param name The template name to retrieve
* @param okIfNotFound
* The flag indicating whether exception will be returned in case nothing is found
- * @return
+ * @return Clds template from DB
*/
public static CldsTemplate retrieve(CldsDao cldsDao, String name, boolean okIfNotFound) {
// get from db
import java.util.List;
/**
- * Represents a CLDS Tosca model
- *
+ * Represents a CLDS Tosca model.
*/
public class CldsToscaModelDetails {
*/
/**
- * Represents a CLDS Tosca model revision
- *
+ * Represents a CLDS Tosca model revision.
*/
package org.onap.clamp.clds.model;
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
protected static final EELFLogger logger = EELFManager.getInstance().getLogger(AbstractModelElement.class);
protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger();
- private final String type;
- private final ModelBpmn modelBpmn;
private final String id;
protected String topicPublishes;
protected final JsonElement modelElementJsonNode;
- private boolean isFound;
- private final ModelProperties modelProp;
+ private final boolean isFound;
/**
* Perform base parsing of properties for a ModelElement (such as, VesCollector, Policy and Tca).
*/
- protected AbstractModelElement(String type, ModelProperties modelProp, ModelBpmn modelBpmn, JsonObject modelJson) {
- this.type = type;
- this.modelProp = modelProp;
- this.modelBpmn = modelBpmn;
+ protected AbstractModelElement(String type, ModelBpmn modelBpmn, JsonObject modelJson) {
this.id = modelBpmn.getId(type);
this.modelElementJsonNode = modelJson.get(id);
this.isFound = modelBpmn.isModelElementTypeInList(type);
/**
* Get the topic publishes.
+ *
* @return the topicPublishes
*/
public String getTopicPublishes() {
return topicPublishes;
}
-
/**
* Get the id.
+ *
* @return the id
*/
public String getId() {
/**
* Get the isFound flag.
+ *
* @return the isFound
*/
public boolean isFound() {
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
* limitations under the License.
* ============LICENSE_END============================================
* ===================================================================
- *
+ *
*/
package org.onap.clamp.clds.model.properties;
* Parse Holmes bpmn parameters json properties.
* Example json:
* [{"name":"correlationalLogic","value":"vcwx"},{"name":"configPolicyName","value":"cccc"}]
- *
*/
public class Holmes extends AbstractModelElement {
private static final String TYPE_HOLMES = "holmes";
- private String correlationLogic;
-
- private String configPolicyName;
+ private String correlationLogic;
+ private String configPolicyName;
/**
* Default constructor for Holmes Element.
*
- * @param modelProp
- * The ModelProperties containing the all the info, like bpmn,
- * bpmn params, etc ...
* @param modelBpmn The model bpmn
* @param modelJson The model json
*/
- public Holmes(ModelProperties modelProp, ModelBpmn modelBpmn, JsonObject modelJson) {
- super(TYPE_HOLMES, modelProp, modelBpmn, modelJson);
+ public Holmes(ModelBpmn modelBpmn, JsonObject modelJson) {
+ super(TYPE_HOLMES, modelBpmn, modelJson);
correlationLogic = JsonUtils.getStringValueByName(modelElementJsonNode, "correlationalLogic");
configPolicyName = JsonUtils.getStringValueByName(modelElementJsonNode, "configPolicyName");
public String getConfigPolicyName() {
return configPolicyName;
}
-
}
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
// Parse the list of base Model Elements and build up the
// ModelElements
modelElementClasses.entrySet().stream().parallel()
- .filter(entry -> (AbstractModelElement.class.isAssignableFrom(entry.getKey())
- && missingTypes.contains(entry.getValue())))
- .forEach(entry -> {
- try {
- modelElements.put(entry.getValue(),
- (entry.getKey().getConstructor(ModelProperties.class, ModelBpmn.class, JsonObject.class)
- .newInstance(this, modelBpmn, modelJson)));
- } catch (InstantiationException | NoSuchMethodException | IllegalAccessException
- | InvocationTargetException e) {
- logger.warn("Unable to instantiate a ModelElement " + entry.getValue()
- + ", exception follows: ", e);
- }
- });
+ .filter(entry -> (AbstractModelElement.class.isAssignableFrom(entry.getKey())
+ && missingTypes.contains(entry.getValue())))
+ .forEach(entry -> {
+ try {
+ modelElements.put(entry.getValue(),
+ (entry.getKey().getConstructor(ModelBpmn.class, JsonObject.class)
+ .newInstance(modelBpmn, modelJson)));
+ } catch (InstantiationException | NoSuchMethodException | IllegalAccessException
+ | InvocationTargetException e) {
+ logger.warn("Unable to instantiate a ModelElement " + entry.getValue()
+ + ", exception follows: ", e);
+ }
+ });
}
}
/**
* Replace all '-' with '_' within policy scope and name.
*
- * @param inName
- * @return
+ * @param inName policy scope and name
+ * @return policy scope and name with "-" replaced with "_"
*/
private String normalizePolicyScopeName(String inName) {
return inName.replaceAll("-", "_");
return global;
}
+ /**
+ * Registers model element.
+ *
+ * @param modelElementClass model element class
+ * @param type model element type
+ */
public static final synchronized void registerModelElement(Class<? extends AbstractModelElement> modelElementClass,
String type) {
if (!modelElementClasses.containsKey(modelElementClass.getClass())) {
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
import com.att.eelf.configuration.EELFLogger;
import com.att.eelf.configuration.EELFManager;
-
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
+
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
* "vf3RtPi"]}]]}]
*/
public class Policy extends AbstractModelElement {
- protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Policy.class);
+ protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Policy.class);
protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger();
- private List<PolicyChain> policyChains;
+ private List<PolicyChain> policyChains;
- private static final String TYPE_POLICY = "policy";
+ private static final String TYPE_POLICY = "policy";
/**
* Parse Policy given json node.
*
- * @param modelProp The model properties.
* @param modelBpmn The model bpmn
* @param modelJson The model json
* @throws IOException The IO Exception
*/
- public Policy(ModelProperties modelProp, ModelBpmn modelBpmn, JsonObject modelJson) throws IOException {
- super(TYPE_POLICY, modelProp, modelBpmn, modelJson);
+ public Policy(ModelBpmn modelBpmn, JsonObject modelJson) throws IOException {
+ super(TYPE_POLICY, modelBpmn, modelJson);
// process policies
if (modelElementJsonNode != null) {
/**
* Get the policy chains.
+ *
* @return the policyChains
*/
public List<PolicyChain> getPolicyChains() {
public static final String getType() {
return TYPE_POLICY;
}
-
}
private String guardActiveEnd;
/**
- * Parse Policy given json node.
+ * Parse Policy given JSON node.
*
- * @param item
- * @throws IOException
+ * @param item policy in JSON format
+ * @throws IOException IO exception
*/
public PolicyItem(JsonElement item) throws IOException {
id = JsonUtils.getStringValueByName(item, "_id");
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
* limitations under the License.
* ============LICENSE_END============================================
* ===================================================================
- *
+ *
*/
package org.onap.clamp.clds.model.properties;
import com.att.eelf.configuration.EELFManager;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
+
import java.util.Map.Entry;
import java.util.Set;
/**
* Parse ONAP Tca json properties.
- *
*/
public class Tca extends AbstractModelElement {
- protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Tca.class);
+ protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Tca.class);
protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger();
- private TcaItem tcaItem;
+ private TcaItem tcaItem;
- private static final String TYPE_TCA = "tca";
+ private static final String TYPE_TCA = "tca";
/**
* Parse Tca given json node.
*
- * @param modelProp The model properties
* @param modelBpmn The model bpmn
* @param modelJson The model json
*/
- public Tca(ModelProperties modelProp, ModelBpmn modelBpmn, JsonObject modelJson) {
- super(TYPE_TCA, modelProp, modelBpmn, modelJson);
+ public Tca(ModelBpmn modelBpmn, JsonObject modelJson) {
+ super(TYPE_TCA, modelBpmn, modelJson);
// process Server_Configurations
if (modelElementJsonNode != null) {
public static final String getType() {
return TYPE_TCA;
}
-
}
@Override
public boolean equals(Object obj) {
- if (this == obj)
+ if (this == obj) {
return true;
- if (obj == null)
+ }
+ if (obj == null) {
return false;
- if (getClass() != obj.getClass())
+ }
+ if (getClass() != obj.getClass()) {
return false;
+ }
SdcResource other = (SdcResource) obj;
if (resourceInstanceName == null) {
- if (other.resourceInstanceName != null)
+ if (other.resourceInstanceName != null) {
return false;
- } else if (!resourceInstanceName.equals(other.resourceInstanceName))
+ }
+ } else if (!resourceInstanceName.equals(other.resourceInstanceName)) {
return false;
+ }
if (resourceVersion == null) {
- if (other.resourceVersion != null)
+ if (other.resourceVersion != null) {
return false;
- } else if (!resourceVersion.equals(other.resourceVersion))
+ }
+ } else if (!resourceVersion.equals(other.resourceVersion)) {
return false;
+ }
return true;
}
/**
- * Convert version String into a BigDecimal
+ * Convert version String into a BigDecimal.
*
- * @param versionText
- * @return
+ * @param versionText version
+ * @return version in BigDecimal
*/
private BigDecimal convertVersion(String versionText) {
BigDecimal rtn = BigDecimal.valueOf(0.0);
@Override
public boolean equals(Object obj) {
- if (this == obj)
+ if (this == obj) {
return true;
- if (obj == null)
+ }
+ if (obj == null) {
return false;
- if (getClass() != obj.getClass())
+ }
+ if (getClass() != obj.getClass()) {
return false;
+ }
SdcResourceBasicInfo other = (SdcResourceBasicInfo) obj;
if (name == null) {
- if (other.name != null)
+ if (other.name != null) {
return false;
- } else if (!name.equals(other.name))
+ }
+ } else if (!name.equals(other.name)) {
return false;
+ }
if (version == null) {
- if (other.version != null)
+ if (other.version != null) {
return false;
- } else if (!version.equals(other.version))
+ }
+ } else if (!version.equals(other.version)) {
return false;
+ }
return true;
}
/**
- * Convert version String into a BigDecimal
+ * Convert version String into a BigDecimal.
*
- * @param version
- * @return
+ * @param version version
+ * @return version in BigDecimal
*/
private BigDecimal convertVersion(String version) {
BigDecimal rtn = BigDecimal.valueOf(0.0);
@Override
public boolean equals(Object obj) {
- if (this == obj)
+ if (this == obj) {
return true;
- if (obj == null)
+ }
+ if (obj == null) {
return false;
- if (getClass() != obj.getClass())
+ }
+ if (getClass() != obj.getClass()) {
return false;
+ }
SdcServiceInfo other = (SdcServiceInfo) obj;
if (name == null) {
- if (other.name != null)
+ if (other.name != null) {
return false;
- } else if (!name.equals(other.name))
+ }
+ } else if (!name.equals(other.name)) {
return false;
+ }
if (version == null) {
- if (other.version != null)
+ if (other.version != null) {
return false;
- } else if (!version.equals(other.version))
+ }
+ } else if (!version.equals(other.version)) {
return false;
+ }
return true;
}
/**
- * Convert version String into a BigDecimal
+ * Convert version String into a BigDecimal.
*
- * @param versionText
- * @return
+ * @param versionText version
+ * @return version in BigDecimal
*/
private BigDecimal convertVersion(String versionText) {
try {
* ===================================================================
*
*/
-/**
- * This class is useful to store the information concerning
- * blueprint artifact extracted from SDC CSAR
- */
package org.onap.clamp.clds.sdc.controller.installer;
import org.onap.sdc.api.notification.IResourceInstance;
+/**
+ * This class is useful to store the information concerning
+ * blueprint artifact extracted from SDC CSAR.
+ */
public class BlueprintArtifact {
private String dcaeBlueprint;
* ===================================================================
*
*/
+
package org.onap.clamp.clds.sdc.controller.installer;
import com.google.gson.Gson;
public static final String DATA_DEFINITION_NAME_SUFFIX = "Definitions/data.yml";
public static final String DATA_DEFINITION_KEY = "data_types:";
- public CsarHandler(INotificationData iNotif, String controller, String clampCsarPath) throws CsarHandlerException {
- this.sdcNotification = iNotif;
+ public CsarHandler(INotificationData data, String controller, String clampCsarPath) throws CsarHandlerException {
+ this.sdcNotification = data;
this.controllerName = controller;
- this.artifactElement = searchForUniqueCsar(iNotif);
+ this.artifactElement = searchForUniqueCsar(data);
this.csarFilePath = buildFilePathForCsar(artifactElement, clampCsarPath);
}
* ===================================================================
*
*/
+
package org.onap.clamp.clds.sdc.controller.installer;
import java.util.Objects;
@Override
public String toString() {
- return "MicroService{" + "name='" + name + '\'' + ", modelType='" + modelType + '\'' + ", inputFrom='" + inputFrom + '\'' + ", mappedNameJpa='"
- + mappedNameJpa + '\'' + ", blueprintName='" + blueprintName + '\'' + '}';
+ return "MicroService{" + "name='" + name + '\'' + ", modelType='" + modelType + '\'' + ", inputFrom='"
+ + inputFrom + '\'' + ", mappedNameJpa='" + mappedNameJpa + '\'' + ", blueprintName='"
+ + blueprintName + '\'' + '}';
}
public String getMappedNameJpa() {
import org.springframework.stereotype.Component;
/**
- * REST services to manage dictionary and dictionary items for Tosca Model
+ * REST services to manage dictionary and dictionary items for Tosca Model.
*/
@Component
public class CldsDictionaryService extends SecureServiceBase {
}
/**
- * REST Service that creates or Updates a Dictionary
+ * REST Service that creates or Updates a Dictionary.
*
- * @param dictionaryName
- * @param cldsDictionary
+ * @param dictionaryName dictionary name
+ * @param cldsDictionary clds dictionary
* @return CldsDictionary that was created in DB.
*/
public ResponseEntity<CldsDictionary> createOrUpdateDictionary(String dictionaryName,
/**
* REST Service that creates or Updates a Dictionary Elements for dictionary
- * in DB
+ * in DB.
*
- * @param dictionaryName
- * @param dictionaryItem
+ * @param dictionaryName dictionary name
+ * @param dictionaryItem dictionary item
* @return CldsDictionaryItem A dictionary items that was created or updated
* in DB
*/
}
/**
- * Rest Service that retrieves all CLDS dictionary in DB
+ * Rest Service that retrieves all CLDS dictionary in DB.
*
* @return CldsDictionary List List of CldsDictionary available in DB
*/
/**
* Rest Service that retrieves all CLDS dictionary items in DB for a give
- * dictionary name
+ * dictionary name.
*
- * @param dictionaryName
+ * @param dictionaryName dictionary name
* @return CldsDictionaryItem list List of CLDS Dictionary items for a given
* dictionary name
*/
* The constant LIST_OF_SDC_SERVICE_INFO_TYPE.
*/
public static final Type LIST_OF_SDC_SERVICE_INFO_TYPE = new TypeToken<List<SdcServiceInfo>>() {
- }.getType();
+ }.getType();
@Produce(uri = "direct:processSubmit")
private CamelProxy camelProxy;
/**
* UUID. If not authorized, then NotAuthorizedException is thrown.
*
* @param model The clds model
- * @return
+ * @return boolean or throws NotAuthorizedException
*/
private boolean isAuthorizedForVf(CldsModel model) {
String vf = ModelProperties.getVf(model);
private SecureServicePermission permissionReadTemplate;
private SecureServicePermission permissionUpdateTemplate;
@Autowired
- private HttpServletRequest request;
+ private HttpServletRequest request;
@PostConstruct
private final void afterConstruction() {
* database. This is subset of the json getModel. This is only expected to
* be used for testing purposes, not by the UI.
*
- * @param templateName
+ * @param templateName template name
* @return bpmn xml text - content of bpmn given name
*/
public String getBpmnTemplate(String templateName) {
- util.entering(request, "CldsTemplateService: GET template bpmn");
+ util.entering(request, "CldsTemplateService: GET template bpmn");
Date startTime = new Date();
isAuthorized(permissionReadTemplate);
logger.info("GET bpmnText for templateName=" + templateName);
* database. This is subset of the json getModel. This is only expected to
* be used for testing purposes, not by the UI.
*
- * @param templateName
+ * @param templateName template name
* @return image xml text - content of image given name
*/
public String getImageXml(String templateName) {
- util.entering(request, "CldsTemplateService: GET template image");
+ util.entering(request, "CldsTemplateService: GET template image");
Date startTime = new Date();
isAuthorized(permissionReadTemplate);
logger.info("GET imageText for templateName=" + templateName);
/**
* REST service that retrieves a CLDS template by name from the database.
*
- * @param templateName
+ * @param templateName template name
* @return clds template - clds template for the given template name
*/
public CldsTemplate getTemplate(String templateName) {
- util.entering(request, "CldsTemplateService: GET template");
+ util.entering(request, "CldsTemplateService: GET template");
Date startTime = new Date();
isAuthorized(permissionReadTemplate);
logger.info("GET model for templateName=" + templateName);
/**
* REST service that saves a CLDS template by name in the database.
*
- * @param templateName
- * @param cldsTemplate
+ * @param templateName template name
+ * @param cldsTemplate clds template
* @return The CldsTemplate modified and saved in DB
*/
public CldsTemplate putTemplate(String templateName, CldsTemplate cldsTemplate) {
- util.entering(request, "CldsTemplateService: PUT template");
+ util.entering(request, "CldsTemplateService: PUT template");
Date startTime = new Date();
isAuthorized(permissionUpdateTemplate);
logger.info("PUT Template for templateName=" + templateName);
* @return template names in JSON
*/
public List<ValueItem> getTemplateNames() {
- util.entering(request, "CldsTemplateService: GET template names");
+ util.entering(request, "CldsTemplateService: GET template names");
Date startTime = new Date();
isAuthorized(permissionReadTemplate);
logger.info("GET list of template names");
}
// Created for the integration test
- public void setLoggingUtil (LoggingUtils utilP) {
+ public void setLoggingUtil(LoggingUtils utilP) {
util = utilP;
}
}
import org.springframework.stereotype.Component;
/**
- * REST services to manage Tosca Model
+ * REST services to manage Tosca Model.
*/
@Component
public class CldsToscaService extends SecureServiceBase {
/**
* Get the userId from AAF/CSP.
*
- * @return
+ * @return user ID
*/
public String getUserId() {
return getUserName();
/**
* Get the Full name.
*
- * @return
+ * @return user name
*/
public String getUserName() {
String name = userNameHandler.retrieveUserName(securityContext);
/**
* Get the principal name.
*
- * @return
+ * @return the principal name
*/
public String getPrincipalName() {
String principal = ((UserDetails)securityContext.getAuthentication().getPrincipal()).getUsername();
// the rest of these don't seem to be required - isUserInRole method
// appears to take * as a wildcard
} else if (hasRole(inPermission.getKeyAllInstance())) {
- securityLogger.info("{} authorized because user has permission with * for instance: {}", getPrincipalName(), inPermission.getKey());
+ securityLogger.info("{} authorized because user has permission with * for instance: {}",
+ getPrincipalName(), inPermission.getKey());
authorized = true;
} else if (hasRole(inPermission.getKeyAllInstanceAction())) {
- securityLogger.info("{} authorized because user has permission with * for instance and * for action: {}", getPrincipalName(), inPermission.getKey());
+ securityLogger.info("{} authorized because user has permission with * for instance and * for action: {}",
+ getPrincipalName(), inPermission.getKey());
authorized = true;
} else if (hasRole(inPermission.getKeyAllAction())) {
- securityLogger.info("{} authorized because user has permission with * for action: {}", getPrincipalName(), inPermission.getKey());
+ securityLogger.info("{} authorized because user has permission with * for action: {}",
+ getPrincipalName(), inPermission.getKey());
authorized = true;
} else {
throw new NotAuthorizedException("");
}
for (GrantedAuthority auth : authentication.getAuthorities()) {
- if (role.equals(auth.getAuthority()))
+ if (role.equals(auth.getAuthority())) {
return true;
+ }
}
return false;
/**
* Factory method to create permission given type, instance, and action.
*
- * @param type
- * @param instance
- * @param action
- * @return
+ * @param type type of the permission
+ * @param instance instance of the permission
+ * @param action action of the permission
+ * @return instance of SecureServicePermission with type, instance and action
*/
public static SecureServicePermission create(String type, String instance, String action) {
return new SecureServicePermission(type, instance, action);
* Factory method to create permission given type and instance. Default
* action to ALL/*.
*
- * @param type
- * @param instance
- * @return
+ * @param type type of the permission
+ * @param instance instance of the permission
+ * @return instance of SecureServicePermission with type, instance and default action
*/
public static SecureServicePermission create(String type, String instance) {
return new SecureServicePermission(type, instance, ALL);
* Factory method to create permission given type. Default instance and
* action to ALL/*.
*
- * @param type
- * @return
+ * @param type type of the permission
+ * @return instance of SecureServicePermission with type and default instance and action
*/
public static SecureServicePermission create(String type) {
return new SecureServicePermission(type, ALL, ALL);
/**
* Instantiate permission given type, instance, and action.
*
- * @param type
- * @param instance
- * @param action
+ * @param type type of the permission
+ * @param instance instance of the permission
+ * @param action action of the permission
*/
public SecureServicePermission(String type, String instance, String action) {
this.type = type;
}
/**
- * Override toString - return permission in key format
+ * Override toString - return permission in key format.
*/
@Override
public String toString() {
* Return Permission in Key format = type, instance, and action separate by
* pipe character.
*
- * @return
+ * @return permission in key format
*/
public String getKey() {
return type + "|" + instance + "|" + action;
* Return Permission in Key format = type, all instance, and action separate
* by pipe character.
*
- * @return
+ * @return permission in key format
*/
public String getKeyAllInstance() {
return type + "|" + ALL + "|" + action;
* Return Permission in Key format = type, all instance, and all action
* separate by pipe character.
*
- * @return
+ * @return permission in key format
*/
public String getKeyAllInstanceAction() {
return type + "|" + ALL + "|" + ALL;
* Return Permission in Key format = type, instance, and all action separate
* by pipe character.
*
- * @return
+ * @return permission in key format
*/
public String getKeyAllAction() {
return type + "|" + instance + "|" + ALL;
}
/**
+ * Returns the permission type.
+ *
* @return the type
*/
public String getType() {
}
/**
- * @param type
- * the type to set
+ * Sets the type of permission.
+ *
+ * @param type the type to set
*/
public void setType(String type) {
this.type = type;
}
/**
+ * Returns the instance of permission.
+ *
* @return the instance
*/
public String getInstance() {
}
/**
- * @param instance
- * the instance to set
+ * Sets the instance of permission.
+ *
+ * @param instance the instance to set
*/
public void setInstance(String instance) {
this.instance = instance;
}
/**
+ * Returns the action of permission.
+ *
* @return the action
*/
public String getAction() {
}
/**
- * @param action
- * the action to set
+ * Sets the action of permission.
+ *
+ * @param action the action to set
*/
public void setAction(String action) {
this.action = action;
@Controller
public class UserService {
- private SecurityContext securityContext= SecurityContextHolder.getContext();
+ private SecurityContext securityContext = SecurityContextHolder.getContext();
/**
* REST service that returns the username.
*
- * @param userName
* @return the user name
*/
public String getUser() {
/**
* Tosca Model Yaml parser and convertor to JSON Schema consumable for JSON
- * Editor
+ * Editor.
*
*/
public class ToscaYamlToJsonConvertor {
}
/**
+ * Returns the CldsDao.
+ *
* @return the cldsDao
*/
public CldsDao getCldsDao() {
}
/**
- * @param cldsDao
- * the cldsDao to set
+ * Sets the CldsDao.
+ *
+ * @param cldsDao the cldsDao to set
*/
public void setCldsDao(CldsDao cldsDao) {
this.cldsDao = cldsDao;
}
+ /**
+ * Parses Tosca YAML string.
+ *
+ * @param yamlString YAML string
+ * @return JSON string
+ */
public String parseToscaYaml(String yamlString) {
Yaml yaml = new Yaml();
}
LinkedHashMap<String, Object> nodeTypes = new LinkedHashMap<>();
LinkedHashMap<String, Object> dataNodes = new LinkedHashMap<>();
- JSONObject jsonEditorObject = new JSONObject();
JSONObject jsonParentObject = new JSONObject();
JSONObject jsonTempObject = new JSONObject();
parseNodeAndDataType(loadedYaml, nodeTypes, dataNodes);
if (jsonTempObject.length() > 0) {
jsonParentObject = jsonTempObject;
}
+ JSONObject jsonEditorObject = new JSONObject();
jsonEditorObject.put(JsonEditorSchemaConstants.SCHEMA, jsonParentObject);
return jsonEditorObject.toString();
}
boolean isListNode = false;
parseDescription((LinkedHashMap<String, Object>) ntPropertiesElement.getValue(),
jsonParentObject);
- LinkedHashMap<String, Object> parentPropertiesMap = (LinkedHashMap<String, Object>) ntPropertiesElement
- .getValue();
+ LinkedHashMap<String, Object> parentPropertiesMap =
+ (LinkedHashMap<String, Object>) ntPropertiesElement.getValue();
if (parentPropertiesMap.containsKey(ToscaSchemaConstants.TYPE)
&& ((String) parentPropertiesMap.get(ToscaSchemaConstants.TYPE))
.contains(ToscaSchemaConstants.TYPE_MAP)
private Templates templates;
+ /**
+ * Sets Xsl Resource name.
+ *
+ * @param xslResourceName xsl resource name
+ * @throws TransformerConfigurationException exception if there is configuration error
+ */
public void setXslResourceName(String xslResourceName) throws TransformerConfigurationException {
TransformerFactory tfactory = new TransformerFactoryImpl();
tfactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
/**
* Given xml input, return the transformed result.
*
- * @param xml
- * @throws TransformerException
+ * @param xml xml string
+ * @throws TransformerException exception during transformation
*/
public String doXslTransformToString(String xml) throws TransformerException {
StringWriter output = new StringWriter(4096);
private ClampVersioning() {
}
+ /**
+ * Returns Clds version from properties.
+ *
+ * @return Clds version from properties
+ */
public static String getCldsVersionFromProps() {
String cldsVersion = "";
Properties props = new Properties();
props.load(resourceStream);
cldsVersion = props.getProperty(CLDS_VERSION_PROPERTY);
} catch (Exception ex) {
- LOGGER.error("Exception caught during the "+CLDS_VERSION_PROPERTY+" property reading", ex);
+ LOGGER.error("Exception caught during the " + CLDS_VERSION_PROPERTY + " property reading", ex);
}
return cldsVersion;
}
}
/**
- * Reads SecretKeySpec from file specified by propertiesFileName
+ * Reads SecretKeySpec from file specified by propertiesFileName.
*
* @param propertiesFileName
* File name with properties
private static SecretKeySpec readSecretKeySpec(String propertiesFileName) {
Properties props = new Properties();
try {
- //Workaround fix to make encryption key configurable.
- //System environment variable takes precedence for over clds/key.properties
- String encryptionKey = System.getenv(AES_ENCRYPTION_KEY);
- if(encryptionKey != null && encryptionKey.trim().length() > 0) {
- return getSecretKeySpec(encryptionKey);
- } else {
- props.load(ResourceFileUtil.getResourceAsStream(propertiesFileName));
+ //Workaround fix to make encryption key configurable
+ // System environment variable takes precedence for over clds/key.properties
+ String encryptionKey = System.getenv(AES_ENCRYPTION_KEY);
+ if(encryptionKey != null && encryptionKey.trim().length() > 0) {
+ return getSecretKeySpec(encryptionKey);
+ } else {
+ props.load(ResourceFileUtil.getResourceAsStream(propertiesFileName));
return getSecretKeySpec(props.getProperty(KEY_PARAM));
- }
+ }
} catch (IOException | DecoderException e) {
logger.error("Exception occurred during the key reading", e);
return null;
import com.att.eelf.i18n.EELFResourceManager;
public enum LogMessages implements EELFResolvableErrorEnum {
- LOGSERVICE_HELLO_MESSAGE, LOGSERVICE_EMAIL_ERROR, LOGSERVICE_EMAIL_CLASS, LOGSERVICE_EMAIL_CLASS_NULL, PROCESS_INSTANCE_ID;
+ LOGSERVICE_HELLO_MESSAGE, LOGSERVICE_EMAIL_ERROR, LOGSERVICE_EMAIL_CLASS, LOGSERVICE_EMAIL_CLASS_NULL,
+ PROCESS_INSTANCE_ID;
static {
EELFResourceManager.loadMessageBundle("logmessages");
private static final String EMPTY_MESSAGE = "";\r
\r
/** Logger delegate. */\r
- private EELFLogger mLogger;\r
+ private EELFLogger mlogger;\r
/** Automatic UUID, overrideable per adapter or per invocation. */\r
private static UUID sInstanceUUID = UUID.randomUUID();\r
+\r
/**\r
- * Constructor\r
+ * Constructor.\r
*/\r
public LoggingUtils(final EELFLogger loggerP) {\r
- this.mLogger = checkNotNull(loggerP);\r
+ this.mlogger = checkNotNull(loggerP);\r
}\r
\r
/**\r
/**\r
* Report <tt>ENTERING</tt> marker.\r
*\r
- * @param request non-null incoming request (wrapper).\r
- * @return this.\r
+ * @param request non-null incoming request (wrapper)\r
+ * @param serviceName service name\r
*/\r
public void entering(HttpServletRequest request, String serviceName) {\r
MDC.clear();\r
checkNotNull(request);\r
// Extract MDC values from standard HTTP headers.\r
- final String requestID = defaultToUUID(request.getHeader(ONAPLogConstants.Headers.REQUEST_ID));\r
- final String invocationID = defaultToUUID(request.getHeader(ONAPLogConstants.Headers.INVOCATION_ID));\r
+ final String requestId = defaultToUUID(request.getHeader(ONAPLogConstants.Headers.REQUEST_ID));\r
+ final String invocationId = defaultToUUID(request.getHeader(ONAPLogConstants.Headers.INVOCATION_ID));\r
final String partnerName = defaultToEmpty(request.getHeader(ONAPLogConstants.Headers.PARTNER_NAME));\r
\r
// Default the partner name to the user name used to login to clamp\r
if (partnerName.equalsIgnoreCase(EMPTY_MESSAGE)) {\r
- MDC.put(ONAPLogConstants.MDCs.PARTNER_NAME, new DefaultUserNameHandler().retrieveUserName(SecurityContextHolder.getContext()));\r
+ MDC.put(ONAPLogConstants.MDCs.PARTNER_NAME, new DefaultUserNameHandler()\r
+ .retrieveUserName(SecurityContextHolder.getContext()));\r
}\r
\r
// Set standard MDCs. Override this entire method if you want to set\r
MDC.put(ONAPLogConstants.MDCs.ENTRY_TIMESTAMP,\r
ZonedDateTime.now(ZoneOffset.UTC)\r
.format(DateTimeFormatter.ISO_INSTANT));\r
- MDC.put(ONAPLogConstants.MDCs.REQUEST_ID, requestID);\r
- MDC.put(ONAPLogConstants.MDCs.INVOCATION_ID, invocationID);\r
+ MDC.put(ONAPLogConstants.MDCs.REQUEST_ID, requestId);\r
+ MDC.put(ONAPLogConstants.MDCs.INVOCATION_ID, invocationId);\r
MDC.put(ONAPLogConstants.MDCs.CLIENT_IP_ADDRESS, defaultToEmpty(request.getRemoteAddr()));\r
MDC.put(ONAPLogConstants.MDCs.SERVER_FQDN, defaultToEmpty(request.getServerName()));\r
MDC.put(ONAPLogConstants.MDCs.INSTANCE_UUID, defaultToEmpty(sInstanceUUID));\r
\r
// Default the service name to the requestURI, in the event that\r
// no value has been provided.\r
- if (serviceName == null ||\r
- serviceName.equalsIgnoreCase(EMPTY_MESSAGE)) {\r
+ if (serviceName == null\r
+ || serviceName.equalsIgnoreCase(EMPTY_MESSAGE)) {\r
MDC.put(ONAPLogConstants.MDCs.SERVICE_NAME, request.getRequestURI());\r
} else {\r
MDC.put(ONAPLogConstants.MDCs.SERVICE_NAME, serviceName);\r
}\r
\r
- this.mLogger.info(ONAPLogConstants.Markers.ENTRY);\r
+ this.mlogger.info(ONAPLogConstants.Markers.ENTRY);\r
}\r
\r
/**\r
* Report <tt>EXITING</tt> marker.\r
*\r
- * @return this.\r
+ * @param code response code\r
+ * @param descrption response description\r
+ * @param severity response severity\r
+ * @param status response status code\r
*/\r
public void exiting(String code, String descrption, Level severity, ONAPLogConstants.ResponseStatus status) {\r
try {\r
MDC.put(ONAPLogConstants.MDCs.RESPONSE_DESCRIPTION, defaultToEmpty(descrption));\r
MDC.put(ONAPLogConstants.MDCs.RESPONSE_SEVERITY, defaultToEmpty(severity));\r
MDC.put(ONAPLogConstants.MDCs.RESPONSE_STATUS_CODE, defaultToEmpty(status));\r
- this.mLogger.info(ONAPLogConstants.Markers.EXIT);\r
+ this.mlogger.info(ONAPLogConstants.Markers.EXIT);\r
}\r
finally {\r
MDC.clear();\r
* Report pending invocation with <tt>INVOKE</tt> marker,\r
* setting standard ONAP logging headers automatically.\r
*\r
- * @param builder request builder, for setting headers.\r
- * @param sync whether synchronous, nullable.\r
- * @return invocation ID to be passed with invocation.\r
+ * @param con http URL connection\r
+ * @param targetEntity target entity\r
+ * @param targetServiceName target service name\r
+ * @return invocation ID to be passed with invocation\r
*/\r
public HttpURLConnection invoke(final HttpURLConnection con, String targetEntity, String targetServiceName) {\r
- final String invocationID = UUID.randomUUID().toString();\r
+ final String invocationId = UUID.randomUUID().toString();\r
\r
// Set standard HTTP headers on (southbound request) builder.\r
con.setRequestProperty(ONAPLogConstants.Headers.REQUEST_ID,\r
defaultToEmpty(MDC.get(ONAPLogConstants.MDCs.REQUEST_ID)));\r
con.setRequestProperty(ONAPLogConstants.Headers.INVOCATION_ID,\r
- invocationID);\r
+ invocationId);\r
con.setRequestProperty(ONAPLogConstants.Headers.PARTNER_NAME,\r
defaultToEmpty(MDC.get(ONAPLogConstants.MDCs.PARTNER_NAME)));\r
\r
- invokeContext(targetEntity, targetServiceName, invocationID);\r
+ invokeContext(targetEntity, targetServiceName, invocationId);\r
\r
// Log INVOKE*, with the invocationID as the message body.\r
// (We didn't really want this kind of behavior in the standard,\r
// but is it worse than new, single-message MDC?)\r
- this.mLogger.info(ONAPLogConstants.Markers.INVOKE);\r
- this.mLogger.info(ONAPLogConstants.Markers.INVOKE_SYNC + "{"+ invocationID +"}");\r
+ this.mlogger.info(ONAPLogConstants.Markers.INVOKE);\r
+ this.mlogger.info(ONAPLogConstants.Markers.INVOKE_SYNC + "{" + invocationId + "}");\r
return con;\r
}\r
\r
* Report pending invocation with <tt>INVOKE</tt> marker,\r
* setting standard ONAP logging headers automatically.\r
*\r
- * @param builder request builder, for setting headers.\r
- * @param sync whether synchronous, nullable.\r
- * @return invocation ID to be passed with invocation.\r
+ * @param con http URL connection\r
+ * @param targetEntity target entity\r
+ * @param targetServiceName target service name\r
+ * @return invocation ID to be passed with invocation\r
*/\r
public HttpsURLConnection invokeHttps(final HttpsURLConnection con, String targetEntity, String targetServiceName) {\r
- final String invocationID = UUID.randomUUID().toString();\r
+ final String invocationId = UUID.randomUUID().toString();\r
\r
// Set standard HTTP headers on (southbound request) builder.\r
con.setRequestProperty(ONAPLogConstants.Headers.REQUEST_ID,\r
defaultToEmpty(MDC.get(ONAPLogConstants.MDCs.REQUEST_ID)));\r
con.setRequestProperty(ONAPLogConstants.Headers.INVOCATION_ID,\r
- invocationID);\r
+ invocationId);\r
con.setRequestProperty(ONAPLogConstants.Headers.PARTNER_NAME,\r
defaultToEmpty(MDC.get(ONAPLogConstants.MDCs.PARTNER_NAME)));\r
\r
- invokeContext(targetEntity, targetServiceName, invocationID);\r
+ invokeContext(targetEntity, targetServiceName, invocationId);\r
\r
// Log INVOKE*, with the invocationID as the message body.\r
// (We didn't really want this kind of behavior in the standard,\r
// but is it worse than new, single-message MDC?)\r
- this.mLogger.info(ONAPLogConstants.Markers.INVOKE);\r
- this.mLogger.info(ONAPLogConstants.Markers.INVOKE_SYNC + "{"+ invocationID +"}");\r
+ this.mlogger.info(ONAPLogConstants.Markers.INVOKE);\r
+ this.mlogger.info(ONAPLogConstants.Markers.INVOKE_SYNC + "{" + invocationId + "}");\r
return con;\r
}\r
\r
+ /**\r
+ * Invokes return context.\r
+ */\r
public void invokeReturn() {\r
// Add the Invoke-return marker and clear the needed MDC\r
- this.mLogger.info(ONAPLogConstants.Markers.INVOKE_RETURN);\r
+ this.mlogger.info(ONAPLogConstants.Markers.INVOKE_RETURN);\r
invokeReturnContext();\r
}\r
\r
/**\r
* Dependency-free nullcheck.\r
*\r
- * @param in to be checked.\r
- * @param <T> argument (and return) type.\r
- * @return input arg.\r
+ * @param in to be checked\r
+ * @param <T> argument (and return) type\r
+ * @return input arg\r
*/\r
private static <T> T checkNotNull(final T in) {\r
if (in == null) {\r
/**\r
* Dependency-free string default.\r
*\r
- * @param in to be filtered.\r
- * @return input string or null.\r
+ * @param in to be filtered\r
+ * @return input string or null\r
*/\r
private static String defaultToEmpty(final Object in) {\r
if (in == null) {\r
/**\r
* Dependency-free string default.\r
*\r
- * @param in to be filtered.\r
- * @return input string or null.\r
+ * @param in to be filtered\r
+ * @return input string or null\r
*/\r
private static String defaultToUUID(final String in) {\r
if (in == null) {\r
}\r
\r
/**\r
- * Set target related logging variables in thread local data via MDC\r
+ * Set target related logging variables in thread local data via MDC.\r
*\r
* @param targetEntity Target entity (an external/sub component, for ex. "sdc")\r
* @param targetServiceName Target service name (name of API invoked on target)\r
- * @param invocationId The invocation ID\r
+ * @param invocationID The invocation ID\r
*/\r
- private void invokeContext (String targetEntity, String targetServiceName, String invocationID) {\r
+ private void invokeContext(String targetEntity, String targetServiceName, String invocationID) {\r
MDC.put(ONAPLogConstants.MDCs.TARGET_ENTITY, defaultToEmpty(targetEntity));\r
MDC.put(ONAPLogConstants.MDCs.TARGET_SERVICE_NAME, defaultToEmpty(targetServiceName));\r
MDC.put(ONAPLogConstants.MDCs.INVOCATIONID_OUT, invocationID);\r
}\r
\r
/**\r
- * Clear target related logging variables in thread local data via MDC\r
- *\r
+ * Clear target related logging variables in thread local data via MDC.\r
*/\r
- private void invokeReturnContext () {\r
+ private void invokeReturnContext() {\r
MDC.remove(ONAPLogConstants.MDCs.TARGET_ENTITY);\r
MDC.remove(ONAPLogConstants.MDCs.TARGET_SERVICE_NAME);\r
MDC.remove(ONAPLogConstants.MDCs.INVOCATIONID_OUT);\r
import org.w3c.dom.Document;
public class XmlTools {
+
+ /**
+ * Transforms document to XML string.
+ *
+ * @param doc XML document
+ * @return XML string
+ */
public static String exportXmlDocumentAsString(Document doc) {
try {
TransformerFactory tf = TransformerFactory.newInstance();
throw new RuntimeException(e);
}
}
+
+ /**
+ * Creates empty svg document.
+ *
+ * @return Document
+ */
public static Document createEmptySvgDocument() {
DOMImplementation domImplementation = GenericDOMImplementation.getDOMImplementation();
- String svgNS = SVGDOMImplementation.SVG_NAMESPACE_URI;
- return domImplementation.createDocument(svgNS, SVGConstants.SVG_SVG_TAG, null);
+ String svgNs = SVGDOMImplementation.SVG_NAMESPACE_URI;
+ return domImplementation.createDocument(svgNs, SVGConstants.SVG_SVG_TAG, null);
}
}
this.documentBuilder = documentBuilder;
}
+ /**
+ * Returns svg string.
+ *
+ * @return svg string
+ */
public String getAsSVG() {
- if(Objects.isNull(svg) || svg.isEmpty()) {
+ if (Objects.isNull(svg) || svg.isEmpty()) {
svg = XmlTools.exportXmlDocumentAsString(this.documentBuilder.getGroupingDocument());
}
return svg;
this.painter = painter;
}
- public ClampGraphBuilder collector(String c) {
- collector = c;
+ public ClampGraphBuilder collector(String collector) {
+ this.collector = collector;
return this;
}
- public ClampGraphBuilder policy(String p) {
- policy = p;
+ public ClampGraphBuilder policy(String policy) {
+ this.policy = policy;
return this;
}
ImageBuilder rectangle(String dataElementId, RectTypes rectType, String text) {
Point next = new Point(currentPoint.x + baseLength, currentPoint.y);
- Point p = coordinatesForRectangle(currentPoint, next);
+ Point point = coordinatesForRectangle(currentPoint, next);
- handleBasedOnRectType(rectType, text, p, baseLength, rectHeight);
+ handleBasedOnRectType(rectType, text, point, baseLength, rectHeight);
documentBuilder.pushChangestoDocument(g2d, dataElementId);
currentPoint = next;
return documentBuilder;
}
- private void handleBasedOnRectType(RectTypes rectType, String text, Point p, int w, int h) {
- AwtUtils.rectWithText(g2d, text, p, w, h);
+ private void handleBasedOnRectType(RectTypes rectType, String text, Point point, int width, int height) {
+ AwtUtils.rectWithText(g2d, text, point, width, height);
switch (rectType) {
case COLECTOR:
- drawVerticalLineForCollector(p, w, h);
+ drawVerticalLineForCollector(point, width, height);
break;
case MICROSERVICE:
- drawHorizontalLineForMicroService(p, w, h);
+ drawHorizontalLineForMicroService(point, width, height);
break;
case POLICY:
- drawDiagonalLineForPolicy(p, w, h);
+ drawDiagonalLineForPolicy(point, width, height);
break;
}
}
- private void drawVerticalLineForCollector(Point p, int w, int h) {
- g2d.drawLine(p.x + w / COLLECTOR_LINE_RATIO, p.y, p.x + w / COLLECTOR_LINE_RATIO, p.y + h);
+ private void drawVerticalLineForCollector(Point point, int width, int height) {
+ g2d.drawLine(point.x + width / COLLECTOR_LINE_RATIO, point.y, point.x + width / COLLECTOR_LINE_RATIO,
+ point.y + height);
}
- private void drawHorizontalLineForMicroService(Point p, int w, int h) {
- int y = calculateMsHorizontalLineYCoordinate(p,h);
- g2d.drawLine(p.x, y, p.x + w, y);
+ private void drawHorizontalLineForMicroService(Point point, int width, int height) {
+ int y = calculateMsHorizontalLineYCoordinate(point,height);
+ g2d.drawLine(point.x, y, point.x + width, y);
}
- private void drawDiagonalLineForPolicy(Point p, int w, int h) {
- g2d.drawLine(p.x, p.y + h / POLICY_LINE_RATIO, p.x + w / POLICY_LINE_RATIO, p.y);
+ private void drawDiagonalLineForPolicy(Point point, int width, int height) {
+ g2d.drawLine(point.x, point.y + height / POLICY_LINE_RATIO, point.x + width / POLICY_LINE_RATIO, point.y);
}
- private int calculateMsHorizontalLineYCoordinate(Point p, int h) {
- return (int)(p.y * h * MS_LINE_TO_HEIGHT_RATIO);
+ private int calculateMsHorizontalLineYCoordinate(Point point, int height) {
+ return (int)(point.y * height * MS_LINE_TO_HEIGHT_RATIO);
}
private Point coordinatesForRectangle(Point from, Point next) {
private static final double RECT_RATIO = 3.0 / 2.0;
private static final int CIRCLE_RADIUS = 17;
+ /**
+ * Constructor to create instance of Painter.
+ *
+ * @param svgGraphics2D svg graphics
+ * @param documentBuilder document builder
+ */
public Painter(SVGGraphics2D svgGraphics2D, DocumentBuilder documentBuilder) {
this.g2d = svgGraphics2D;
this.documentBuilder = documentBuilder;
* Copyright (C) 2019 Nokia Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
* 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
import com.google.gson.JsonObject;
import java.io.IOException;
import org.junit.Test;
+import org.mockito.Mockito;
import org.onap.clamp.clds.config.ClampProperties;
+import org.onap.clamp.clds.exception.TcaRequestFormatterException;
import org.onap.clamp.clds.model.properties.ModelProperties;
import org.onap.clamp.clds.model.properties.Tca;
import org.onap.clamp.clds.model.properties.TcaItem;
//then
assertThat(expectedRequest).isEqualTo(policyContent);
}
+
+ @Test(expected = TcaRequestFormatterException.class)
+ public void shouldThrowTcaRequestFormatterException() throws IOException{
+ //given
+ String service = "TestService";
+ String policy = "TestService_scope.PolicyName";
+ ClampProperties clampProperties = mock(ClampProperties.class);
+ ModelProperties modelProperties = mock(ModelProperties.class);
+ Tca tca = mock(Tca.class);
+ //when
+ Mockito.when(clampProperties.getJsonTemplate(any(), any())).thenThrow(IOException.class);
+ //then
+ TcaRequestFormatter.createPolicyContent(clampProperties, modelProperties, service, policy, tca);
+ }
}
\ No newline at end of file
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights\r
* reserved.\r
* ================================================================================\r
+ * Modifications Copyright (c) 2019 Samsung\r
+ * ================================================================================\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
* You may obtain a copy of the License at\r
import com.google.gson.JsonObject;\r
import org.onap.clamp.clds.model.properties.AbstractModelElement;\r
import org.onap.clamp.clds.model.properties.ModelBpmn;\r
-import org.onap.clamp.clds.model.properties.ModelProperties;\r
import org.onap.clamp.clds.util.JsonUtils;\r
\r
/**\r
/**\r
* Main Constructor.\r
*/\r
- public CustomModelElement(ModelProperties modelProp, ModelBpmn modelBpmn, JsonObject modelJson) {\r
- super(CUSTOM_TYPE, modelProp, modelBpmn, modelJson);\r
+ public CustomModelElement(ModelBpmn modelBpmn, JsonObject modelJson) {\r
+ super(CUSTOM_TYPE, modelBpmn, modelJson);\r
topicPublishes = JsonUtils.getStringValueByName(modelElementJsonNode, "topicPublishes");\r
test = JsonUtils.getStringValueByName(modelElementJsonNode, "test");\r
}\r