+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP CLAMP
+ * ================================================================================
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
+ * reserved.
+ * ================================================================================
+ * 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.
+ * ============LICENSE_END============================================
+ * ===================================================================
+ *
+ */
+
package org.onap.clamp.clds.client;
-import java.util.logging.Logger;
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
-import org.camunda.bpm.engine.delegate.DelegateExecution;
-import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.apache.camel.Exchange;
+import org.apache.camel.Handler;
+import org.onap.clamp.clds.client.req.policy.PolicyClient;
+import org.onap.clamp.clds.model.properties.ModelProperties;
+import org.onap.clamp.clds.model.properties.Tca;
import org.springframework.beans.factory.annotation.Autowired;
-
-import org.onap.clamp.clds.model.prop.ModelProperties;
-import org.onap.clamp.clds.model.prop.Tca;
-import org.onap.clamp.clds.model.refprop.RefProp;
-
+import org.springframework.stereotype.Component;
/**
- * Delete Tca Policy via policy api.
- *
- *
+ * Delete Tca Policy via policy api.
*/
-public class TcaPolicyDeleteDelegate implements JavaDelegate {
- // currently uses the java.util.logging.Logger like the Camunda engine
- private static final Logger logger = Logger.getLogger(TcaPolicyDeleteDelegate.class.getName());
-
- @Autowired
- private PolicyClient policyClient;
-
- /**
- * Perform activity. Delete Tca Policy via policy api.
- *
- * @param execution
- */
- public void execute(DelegateExecution execution) throws Exception {
+@Component
+public class TcaPolicyDeleteDelegate {
+
+ protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaPolicyDeleteDelegate.class);
+ protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger();
+ @Autowired
+ private PolicyClient policyClient;
- ModelProperties prop = ModelProperties.create(execution);
- Tca tca = prop.getTca();
- if(tca.isFound()){
- prop.setCurrentModelElementId(tca.getId());
-
- String responseMessage = policyClient.deleteMicrosService(prop);
- if(responseMessage != null)
- {
- execution.setVariable("tcaPolicyDeleteResponseMessage", responseMessage.getBytes());
- }
- }
- }
-
-
-
+ /**
+ * Perform activity. Delete Tca Policy via policy api.
+ *
+ * @param camelExchange
+ * The Camel Exchange object containing the properties
+ */
+ @Handler
+ public void execute(Exchange camelExchange) {
+ ModelProperties prop = ModelProperties.create(camelExchange);
+ Tca tca = prop.getType(Tca.class);
+ if (tca.isFound()) {
+ prop.setCurrentModelElementId(tca.getId());
+ String responseMessage = policyClient.deleteMicrosService(prop);
+ if (responseMessage != null) {
+ camelExchange.setProperty("tcaPolicyDeleteResponseMessage", responseMessage.getBytes());
+ }
+ }
+ }
}