/*-
* ============LICENSE_START=======================================================
- * openECOMP : APP-C
+ * ONAP : APPC
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights
- * reserved.
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
* ================================================================================
+ * Copyright (C) 2017 Amdocs
+ * =============================================================================
* 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
* 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=========================================================
*/
-package org.openecomp.appc.requesthandler.conv;
-
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
+package org.onap.appc.requesthandler.conv;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.Action;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.AuditOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.HealthCheckOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.LiveUpgradeOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.LockOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.ModifyConfigOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.Payload;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.RollbackOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.SnapshotOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.SoftwareUploadOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.StopOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.SyncOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.TerminateOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.TestOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.UnlockOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.ZULU;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.CommonHeader;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.CommonHeaderBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.FlagsBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.status.Status;
-import org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.status.StatusBuilder;
-import org.opendaylight.yangtools.concepts.Builder;
-import org.opendaylight.yangtools.yang.binding.DataContainer;
-import org.openecomp.appc.domainmodel.lcm.ResponseContext;
-import org.openecomp.appc.domainmodel.lcm.VNFOperation;
-import org.openecomp.appc.requesthandler.impl.DmaapOutgoingMessage;
import com.att.eelf.configuration.EELFLogger;
import com.att.eelf.configuration.EELFManager;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.fasterxml.jackson.databind.SerializationFeature;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.*;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.CommonHeader;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.CommonHeaderBuilder;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.FlagsBuilder;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.status.Status;
+import org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.status.StatusBuilder;
+import org.opendaylight.yangtools.concepts.Builder;
+import org.opendaylight.yangtools.yang.binding.DataContainer;
+import org.onap.appc.domainmodel.lcm.ResponseContext;
+import org.onap.appc.domainmodel.lcm.VNFOperation;
+import org.onap.appc.requesthandler.impl.DmaapOutgoingMessage;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
public class Converter {
Action action = Action.valueOf(vnfOperation.name());
CommonHeader commonHeader = convAsyncResponseTorev160108CommonHeader(response);
Status status = convAsyncResponseTorev160108Status(response);
+ Payload payload = convAsyncResponseTorev160108Payload(response);
switch (action){
case Rollback:
outObj = new RollbackOutputBuilder();
outObj = new AuditOutputBuilder();
((AuditOutputBuilder)outObj).setCommonHeader(commonHeader);
((AuditOutputBuilder)outObj).setStatus(status);
+ ((AuditOutputBuilder)outObj).setPayload(payload);
return outObj;
case HealthCheck:
outObj = new HealthCheckOutputBuilder();
((LockOutputBuilder)outObj).setCommonHeader(commonHeader);
((LockOutputBuilder)outObj).setStatus(status);
return outObj;
- case ModifyConfig:
- outObj = new ModifyConfigOutputBuilder();
- ((ModifyConfigOutputBuilder)outObj).setCommonHeader(commonHeader);
- ((ModifyConfigOutputBuilder)outObj).setStatus(status);
+ case Configure:
+ outObj = new ConfigureOutputBuilder();
+ ((ConfigureOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigureOutputBuilder)outObj).setStatus(status);
+ ((ConfigureOutputBuilder)outObj).setPayload(payload);
+ return outObj;
+ case ConfigModify:
+ outObj = new ConfigModifyOutputBuilder();
+ ((ConfigModifyOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigModifyOutputBuilder)outObj).setStatus(status);
+ ((ConfigModifyOutputBuilder)outObj).setPayload(payload);
+ return outObj;
+ case ConfigScaleOut:
+ outObj = new ConfigScaleoutOutputBuilder();
+ ((ConfigScaleoutOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigScaleoutOutputBuilder)outObj).setStatus(status);
+ ((ConfigScaleoutOutputBuilder)outObj).setPayload(payload);
+ return outObj;
+ case ConfigRestore:
+ outObj = new ConfigRestoreOutputBuilder();
+ ((ConfigRestoreOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigRestoreOutputBuilder)outObj).setStatus(status);
+ ((ConfigRestoreOutputBuilder)outObj).setPayload(payload);
return outObj;
case SoftwareUpload:
outObj = new SoftwareUploadOutputBuilder();
outObj = new SyncOutputBuilder();
((SyncOutputBuilder)outObj).setCommonHeader(commonHeader);
((SyncOutputBuilder)outObj).setStatus(status);
+ ((SyncOutputBuilder)outObj).setPayload(payload);
return outObj;
case Terminate:
outObj = new TerminateOutputBuilder();
((UnlockOutputBuilder)outObj).setCommonHeader(commonHeader);
((UnlockOutputBuilder)outObj).setStatus(status);
return outObj;
+ case Restart:
+ outObj = new RestartOutputBuilder();
+ ((RestartOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((RestartOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case Rebuild:
+ outObj = new RebuildOutputBuilder();
+ ((RebuildOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((RebuildOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case Migrate:
+ outObj = new MigrateOutputBuilder();
+ ((MigrateOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((MigrateOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case Evacuate:
+ outObj = new EvacuateOutputBuilder();
+ ((EvacuateOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((EvacuateOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case ConfigBackup:
+ outObj = new ConfigBackupOutputBuilder();
+ ((ConfigBackupOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigBackupOutputBuilder)outObj).setStatus(status);
+ ((ConfigBackupOutputBuilder)outObj).setPayload(payload);
+ return outObj;
+ case ConfigBackupDelete:
+ outObj = new ConfigBackupDeleteOutputBuilder();
+ ((ConfigBackupDeleteOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigBackupDeleteOutputBuilder)outObj).setStatus(status);
+ ((ConfigBackupDeleteOutputBuilder)outObj).setPayload(payload);
+ return outObj;
+ case ConfigExport:
+ outObj = new ConfigExportOutputBuilder();
+ ((ConfigExportOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((ConfigExportOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case Start:
+ outObj = new StartOutputBuilder();
+ ((StartOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((StartOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case StopApplication:
+ outObj = new StopApplicationOutputBuilder();
+ ((StopApplicationOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((StopApplicationOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case StartApplication:
+ outObj = new StartApplicationOutputBuilder();
+ ((StartApplicationOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((StartApplicationOutputBuilder)outObj).setStatus(status);
+ return outObj;
default:
throw new IllegalArgumentException(action+" action is not supported");
}
}
- public static Payload convAsyncResponseTorev160108Payload(ResponseContext inObj) throws ParseException {
+ public static Payload convAsyncResponseTorev160108Payload(ResponseContext inObj) {
Payload payload = null;
if(inObj.getPayload() != null) {
payload = new Payload(inObj.getPayload());
}
CommonHeaderBuilder commonHeaderBuilder = new CommonHeaderBuilder();
- org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags commonHeaderFlags = null;
+ org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags commonHeaderFlags = null;
if(inObj.getCommonHeader().getFlags() != null){
commonHeaderFlags = Converter.convFlagsMapTorev160108Flags(inObj.getCommonHeader().getFlags());
commonHeaderBuilder.setFlags(commonHeaderFlags);
return isoFormatter.format(timeStamp);
}
- public static org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags
- convFlagsMapTorev160108Flags(org.openecomp.appc.domainmodel.lcm.Flags flags) {
+ public static org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags
+ convFlagsMapTorev160108Flags(org.onap.appc.domainmodel.lcm.Flags flags) {
Flags rev160108flags = null;
boolean anyFlag = false;
FlagsBuilder flagsBuilder = new FlagsBuilder();
*/
/*
if(flags.containsKey(FORCE_FLAG)){
- org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags.Force force =
- org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags.Force.valueOf(flags.get(FORCE_FLAG).toString());
+ org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags.Force force =
+ org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags.Force.valueOf(flags.get(FORCE_FLAG).toString());
flagsBuilder.setForce(force);
anyFlag = true;
}
if(flags.containsKey(MODE_FLAG)){
- org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags.Mode mode =
- org.opendaylight.yang.gen.v1.org.openecomp.appc.rev160108.common.header.common.header.Flags.Mode.valueOf(flags.get(MODE_FLAG).toString());
+ org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags.Mode mode =
+ org.opendaylight.yang.gen.v1.org.onap.appc.lcm.rev160108.common.header.common.header.Flags.Mode.valueOf(flags.get(MODE_FLAG).toString());
flagsBuilder.setMode(mode);
anyFlag = true;
}
public static DmaapOutgoingMessage convAsyncResponseToDmaapOutgoingMessage(VNFOperation vnfOperation, String rpcName, ResponseContext asyncResponse) throws JsonProcessingException {
DmaapOutgoingMessage outObj = new DmaapOutgoingMessage();
+ String correlationID = getCorrelationID(asyncResponse);
+ outObj.setCorrelationID(correlationID);
+ outObj.setType("response");
outObj.setRpcName(rpcName);
Builder<?> builder = Converter.convAsyncResponseToBuilder(vnfOperation, rpcName, asyncResponse);
Object messageBody = builder.build();
return outObj;
}
+ private static String getCorrelationID(ResponseContext context) {
+ return context.getCommonHeader().getRequestId()
+ + (context.getCommonHeader().getSubRequestId() == null ?
+ "":"-" + context.getCommonHeader().getSubRequestId());
+ }
+
abstract class MixIn {
@JsonIgnore
abstract Class<? extends DataContainer> getImplementedInterface(); // to be removed during serialization