[APPC-44] revert license line ending changes

Issue-Id: APPC-44
Change-Id: Id9350fb7e19512ee380d6ca480d5ca9569fe3bd4
Signed-off-by: Joey Sullivan <joey.sullivan@amdocs.com>
diff --git a/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidInputException.java b/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidInputException.java
index dff4564..e9bb0d1 100644
--- a/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidInputException.java
+++ b/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidInputException.java
@@ -1,31 +1,31 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.exceptions;

-

-public class InvalidInputException extends Exception {

-    public InvalidInputException(String message){

-        super(message);

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.exceptions;
+
+public class InvalidInputException extends Exception {
+    public InvalidInputException(String message){
+        super(message);
+    }
+}
diff --git a/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidStateException.java b/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidStateException.java
index 19c9e38..ceeb872 100644
--- a/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidStateException.java
+++ b/appc-common/src/main/java/org/openecomp/appc/exceptions/InvalidStateException.java
@@ -1,31 +1,31 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.exceptions;

-

-public class InvalidStateException extends Exception {

-    public InvalidStateException(String message) {

-        super(message);

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.exceptions;
+
+public class InvalidStateException extends Exception {
+    public InvalidStateException(String message) {
+        super(message);
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/LifecycleManager.java b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/LifecycleManager.java
index 352bf4b..50fb7ee 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/LifecycleManager.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/LifecycleManager.java
@@ -1,33 +1,33 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager;

-

-import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;

-import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;

-

-public interface LifecycleManager {

-    String getNextState(String vnfType, String currentState, String event)

-            throws NoTransitionDefinedException,LifecycleException;

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager;
+
+import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;
+import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;
+
+public interface LifecycleManager {
+    String getNextState(String vnfType, String currentState, String event)
+            throws NoTransitionDefinedException,LifecycleException;
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LCMResponse.java b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LCMResponse.java
index 13b2173..4d73dc5 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LCMResponse.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LCMResponse.java
@@ -1,36 +1,36 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager.objects;

-

-public enum LCMResponse {

-    INVALID_INPUT_PARAMETERS,

-    NO_STATE_CHANGE,

-    NO_TRANSITION_DEFINED,

-    VALID_TRANSITION;

-

-    public String toString(){

-        return this.name();

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager.objects;
+
+public enum LCMResponse {
+    INVALID_INPUT_PARAMETERS,
+    NO_STATE_CHANGE,
+    NO_TRANSITION_DEFINED,
+    VALID_TRANSITION;
+
+    public String toString(){
+        return this.name();
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LifecycleException.java b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LifecycleException.java
index 5d66900..613daa4 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LifecycleException.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/LifecycleException.java
@@ -1,36 +1,36 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager.objects;

-

-public class LifecycleException extends Exception {

-    public final String currentState;

-    public final String event;

-

-    public LifecycleException(Exception e,String currentState,String event){

-        super(e);

-        this.currentState = currentState;

-        this.event = event;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager.objects;
+
+public class LifecycleException extends Exception {
+    public final String currentState;
+    public final String event;
+
+    public LifecycleException(Exception e,String currentState,String event){
+        super(e);
+        this.currentState = currentState;
+        this.event = event;
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/NoTransitionDefinedException.java b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/NoTransitionDefinedException.java
index f6670eb..89616c2 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/NoTransitionDefinedException.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/NoTransitionDefinedException.java
@@ -1,36 +1,36 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager.objects;

-

-public class NoTransitionDefinedException extends Exception {

-    public final String currentState;

-    public final String event;

-

-    public NoTransitionDefinedException(String message,String currentState,String event){

-        super(message);

-        this.currentState = currentState;

-        this.event = event;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager.objects;
+
+public class NoTransitionDefinedException extends Exception {
+    public final String currentState;
+    public final String event;
+
+    public NoTransitionDefinedException(String message,String currentState,String event){
+        super(message);
+        this.currentState = currentState;
+        this.event = event;
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/VNFOperationOutcome.java b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/VNFOperationOutcome.java
index 8d92e35..547ffc1 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/VNFOperationOutcome.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-api/src/main/java/org/openecomp/appc/lifecyclemanager/objects/VNFOperationOutcome.java
@@ -1,32 +1,32 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager.objects;

-

-public enum VNFOperationOutcome {

-    SUCCESS,FAILURE,EXPIRE;

-    public String toString(){

-        return this.name();

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager.objects;
+
+public enum VNFOperationOutcome {
+    SUCCESS,FAILURE,EXPIRE;
+    public String toString(){
+        return this.name();
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/java/org/openecomp/appc/lifecyclemanager/impl/LifecycleManagerImpl.java b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/java/org/openecomp/appc/lifecyclemanager/impl/LifecycleManagerImpl.java
index 890218e..b7acf98 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/java/org/openecomp/appc/lifecyclemanager/impl/LifecycleManagerImpl.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/java/org/openecomp/appc/lifecyclemanager/impl/LifecycleManagerImpl.java
@@ -1,102 +1,102 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.lifecyclemanager.impl;

-

-import com.att.eelf.configuration.EELFLogger;

-import com.att.eelf.configuration.EELFManager;

-import com.att.eelf.i18n.EELFResourceManager;

-import org.openecomp.appc.exceptions.InvalidInputException;

-import org.openecomp.appc.i18n.Msg;

-import org.openecomp.appc.lifecyclemanager.LifecycleManager;

-import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;

-import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;

-import org.openecomp.appc.statemachine.StateMachine;

-import org.openecomp.appc.statemachine.StateMetaDataReader;

-import org.openecomp.appc.statemachine.impl.StateMachineFactory;

-import org.openecomp.appc.statemachine.impl.readers.AppcOamMetaDataReader;

-import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader;

-import org.openecomp.appc.statemachine.objects.*;

-

-import java.util.Map;

-import java.util.concurrent.ConcurrentHashMap;

-

-public class LifecycleManagerImpl implements LifecycleManager{

-

-    private StateMetaDataReader metadataReader;

-    private static Map<String,StateMachine> stateMachineMap = new ConcurrentHashMap<>();

-    private final EELFLogger logger = EELFManager.getInstance().getLogger(LifecycleManagerImpl.class);

-    private final EELFLogger errorLogger = EELFManager.getInstance().getErrorLogger();

-

-    @Override

-    public String getNextState(String vnfType, String currentState, String event) throws NoTransitionDefinedException,LifecycleException{

-        if (logger.isTraceEnabled()) {

-            logger.trace("Entering to getNextState with vnfType = "+ vnfType +    ", currentState = " + currentState + ", event = " + event);

-        }

-

-        State nextState;

-        StateMachine machine;

-        StateMachineResponse response;

-        try {

-            machine = this.getStateMachine(vnfType);

-            response = machine.handleEvent(new State(currentState),new Event(event));

-            if(Response.NO_TRANSITION_DEFINED.equals(response.getResponse())){

-                errorLogger.error(EELFResourceManager.format(Msg.VF_ILLEGAL_COMMAND, vnfType,event,currentState));

-                throw new NoTransitionDefinedException("No Transition Defined for currentState = " +  currentState + ", event = " + event,currentState,event);

-            }

-            nextState = response.getNextState();

-        } catch (InvalidInputException e) {

-            logger.error(e.getMessage());

-            throw new LifecycleException(e,currentState,event);

-        }

-        if (logger.isTraceEnabled()) {

-            logger.trace("Exiting from getNextState with (nextState = " + nextState.getStateName() + ")");

-        }

-        return nextState.getStateName();

-    }

-

-    private StateMachine getStateMachine(String vnfType){

-        if (logger.isTraceEnabled()) {

-            logger.trace("Entering to getNextState with vnfType = "+ vnfType);

-        }

-        if(vnfType == null){

-            vnfType = "DEFAULT";

-        }

-        StateMachine machine = stateMachineMap.get(vnfType);

-        if(machine == null){

-            metadataReader = getMetadataReader(vnfType);

-            StateMachineMetadata metadata = metadataReader.readMetadata();

-            machine = StateMachineFactory.getStateMachine(metadata);

-            stateMachineMap.put(vnfType,machine);

-        }

-

-        logger.trace("Exiting getStateMachine with StateMachine = " + stateMachineMap.get(vnfType).toString());

-        return stateMachineMap.get(vnfType);

-    }

-

-    private StateMetaDataReader getMetadataReader(String vnfType) {

-        return vnfType.equals("APPC") ? new AppcOamMetaDataReader() : new VnfMetaDataReader();

-    }

-

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.lifecyclemanager.impl;
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import com.att.eelf.i18n.EELFResourceManager;
+import org.openecomp.appc.exceptions.InvalidInputException;
+import org.openecomp.appc.i18n.Msg;
+import org.openecomp.appc.lifecyclemanager.LifecycleManager;
+import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;
+import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;
+import org.openecomp.appc.statemachine.StateMachine;
+import org.openecomp.appc.statemachine.StateMetaDataReader;
+import org.openecomp.appc.statemachine.impl.StateMachineFactory;
+import org.openecomp.appc.statemachine.impl.readers.AppcOamMetaDataReader;
+import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader;
+import org.openecomp.appc.statemachine.objects.*;
+
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+public class LifecycleManagerImpl implements LifecycleManager{
+
+    private StateMetaDataReader metadataReader;
+    private static Map<String,StateMachine> stateMachineMap = new ConcurrentHashMap<>();
+    private final EELFLogger logger = EELFManager.getInstance().getLogger(LifecycleManagerImpl.class);
+    private final EELFLogger errorLogger = EELFManager.getInstance().getErrorLogger();
+
+    @Override
+    public String getNextState(String vnfType, String currentState, String event) throws NoTransitionDefinedException,LifecycleException{
+        if (logger.isTraceEnabled()) {
+            logger.trace("Entering to getNextState with vnfType = "+ vnfType +    ", currentState = " + currentState + ", event = " + event);
+        }
+
+        State nextState;
+        StateMachine machine;
+        StateMachineResponse response;
+        try {
+            machine = this.getStateMachine(vnfType);
+            response = machine.handleEvent(new State(currentState),new Event(event));
+            if(Response.NO_TRANSITION_DEFINED.equals(response.getResponse())){
+                errorLogger.error(EELFResourceManager.format(Msg.VF_ILLEGAL_COMMAND, vnfType,event,currentState));
+                throw new NoTransitionDefinedException("No Transition Defined for currentState = " +  currentState + ", event = " + event,currentState,event);
+            }
+            nextState = response.getNextState();
+        } catch (InvalidInputException e) {
+            logger.error(e.getMessage());
+            throw new LifecycleException(e,currentState,event);
+        }
+        if (logger.isTraceEnabled()) {
+            logger.trace("Exiting from getNextState with (nextState = " + nextState.getStateName() + ")");
+        }
+        return nextState.getStateName();
+    }
+
+    private StateMachine getStateMachine(String vnfType){
+        if (logger.isTraceEnabled()) {
+            logger.trace("Entering to getNextState with vnfType = "+ vnfType);
+        }
+        if(vnfType == null){
+            vnfType = "DEFAULT";
+        }
+        StateMachine machine = stateMachineMap.get(vnfType);
+        if(machine == null){
+            metadataReader = getMetadataReader(vnfType);
+            StateMachineMetadata metadata = metadataReader.readMetadata();
+            machine = StateMachineFactory.getStateMachine(metadata);
+            stateMachineMap.put(vnfType,machine);
+        }
+
+        logger.trace("Exiting getStateMachine with StateMachine = " + stateMachineMap.get(vnfType).toString());
+        return stateMachineMap.get(vnfType);
+    }
+
+    private StateMetaDataReader getMetadataReader(String vnfType) {
+        return vnfType.equals("APPC") ? new AppcOamMetaDataReader() : new VnfMetaDataReader();
+    }
+
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
index 77725db..cea242f 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
+++ b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<!--

+<?xml version="1.0" encoding="UTF-8"?>
+<!--
   ============LICENSE_START=======================================================
   ONAP : APPC
   ================================================================================
   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

-  

-       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.

-  

+  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
+  
+       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=========================================================

-  -->

-

-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"

-           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-           xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">

-    <bean id="lifecycleManagerBean" class="org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl" scope="singleton">

-    </bean>

-

-    <service id="lcmService" interface="org.openecomp.appc.lifecyclemanager.LifecycleManager" ref="lifecycleManagerBean"/>

-

-</blueprint>

+  ============LICENSE_END=========================================================
+  -->
+
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">
+    <bean id="lifecycleManagerBean" class="org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl" scope="singleton">
+    </bean>
+
+    <service id="lcmService" interface="org.openecomp.appc.lifecyclemanager.LifecycleManager" ref="lifecycleManagerBean"/>
+
+</blueprint>
diff --git a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/org/openecomp/appc/default.properties b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/org/openecomp/appc/default.properties
index 6b634ca..99d7283 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/org/openecomp/appc/default.properties
+++ b/appc-lifecycle-management/appc-lifecycle-management-core/src/main/resources/org/openecomp/appc/default.properties
@@ -1,39 +1,39 @@
-###

+###
 # ============LICENSE_START=======================================================
 # ONAP : APPC
 # ================================================================================
 # 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

-# 

-#      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.

-# 

+# 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
+# 
+#      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=========================================================

-###

-

-# Define the name and path of any user-provided configuration (bootstrap) file that can be loaded 

-# to supply configuration options 

-org.openecomp.appc.bootstrap.file=appc.properties

-org.openecomp.appc.bootstrap.path=/opt/openecomp/appc/data/properties,${user.home},.

-

-#Property below provided by appc.properties

-appc.LCM.provider.url=https://localhost:8443/restconf/operations/appc-provider-lcm

-appc.LCM.poolMembers=<DMAAP_IP>:3904

-appc.LCM.service=dmaap

-appc.LCM.topic.write=APPC-TEST2

-appc.LCM.client.name=APPC-TEST-CLIENT-LC-MGMT-MAIN

-appc.LCM.provider.user=test

-appc.LCM.provider.pass=test

-

-

+# ============LICENSE_END=========================================================
+###
+
+# Define the name and path of any user-provided configuration (bootstrap) file that can be loaded 
+# to supply configuration options 
+org.openecomp.appc.bootstrap.file=appc.properties
+org.openecomp.appc.bootstrap.path=/opt/openecomp/appc/data/properties,${user.home},.
+
+#Property below provided by appc.properties
+appc.LCM.provider.url=https://localhost:8443/restconf/operations/appc-provider-lcm
+appc.LCM.poolMembers=<DMAAP_IP>:3904
+appc.LCM.service=dmaap
+appc.LCM.topic.write=APPC-TEST2
+appc.LCM.client.name=APPC-TEST-CLIENT-LC-MGMT-MAIN
+appc.LCM.provider.user=test
+appc.LCM.provider.pass=test
+
+
diff --git a/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/LifecycleManagerTest.java b/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/LifecycleManagerTest.java
index e58dcc9..299c325 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/LifecycleManagerTest.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/LifecycleManagerTest.java
@@ -1,185 +1,185 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc;

-

-import org.junit.Assert;

-import org.junit.Test;

-import org.openecomp.appc.exceptions.InvalidInputException;

-import org.openecomp.appc.lifecyclemanager.LifecycleManager;

-import org.openecomp.appc.statemachine.StateMetaDataReader;

-import org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl;

-import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;

-import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;

-import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader;

-import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader.VNFOperation;

-import org.openecomp.appc.statemachine.objects.Event;

-import org.openecomp.appc.statemachine.objects.State;

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-import org.openecomp.appc.statemachine.objects.Transition;

-

-import java.util.*;

-

-

-public class LifecycleManagerTest {

-

-    private static final State[] VALID_LOCK_STATES = new State[] {

-            new State("instantiated"),

-            new State("configured"),

-            new State("tested"),

-            new State("running"),

-            new State("error"),

-            new State("unknown"),

-            new State("created"),

-            new State("not orchestrated"),

-            new State("stopped"),

-    };

-

-    @Test

-    public void handleEvent() throws InvalidInputException, LifecycleException, NoTransitionDefinedException {

-

-        StateMachineMetadata metadata = getMetaDataReader().readMetadata();

-        LifecycleManagerImpl lifecycleManager = new LifecycleManagerImpl();

-

-        /*

-         * Testing Positive Scenario passing the valid events and validating the StateMachineResponse

-         */

-        for(State state:metadata.getStates()){

-

-            for(Transition transition:state.getTransitions()){

-                Event event = transition.getEvent();

-                State nextStateFromMetadata = transition.getNextState();

-

-                String expectedNextState = lifecycleManager.getNextState(null,state.toString(),event.toString());

-                Assert.assertEquals(expectedNextState,nextStateFromMetadata.toString());

-            }

-        }

-

-        /*

-        Testing Negative Scenarios, 1. Passing the valid Events for which Transition is not defined in

-        Metadata and validating the StateMachineResponse 2. Passing the invalid events which are not

-        registered as events in the StateMachineMetadata and validating StateMachineResponse

-         */

-        for(State state:metadata.getStates()){

-

-            for(Transition transition:state.getTransitions()){

-                List<Event> negativeEvents = getNegativeEvents(state,metadata.getEvents());

-

-                for(Event negativeEvent:negativeEvents){

-                    boolean flag =false;

-                    try{

-                        lifecycleManager.getNextState(null,state.toString(),negativeEvent.toString());

-

-                    }

-                    catch (NoTransitionDefinedException e){

-                        flag =true;

-                    }

-                    Assert.assertEquals(flag,true);

-

-                    flag = false;

-                    try{

-                        lifecycleManager.getNextState(null,state.toString(),"PUT");

-                    }

-                    catch(LifecycleException e){

-                        flag = true;

-                    }

-                    Assert.assertTrue(flag);

-

-                }

-            }

-        }

-    }

-

-    @Test

-    public void testNotOrchestratedState() throws LifecycleException, NoTransitionDefinedException {

-        LifecycleManager lifecycleManager = new LifecycleManagerImpl();

-        String nextState = lifecycleManager.getNextState(

-                null,"NOT ORCHESTRATED",VNFOperation.Configure.toString());

-        Assert.assertEquals(nextState,"Configuring");

-    }

-

-    @Test(expected = NoTransitionDefinedException.class)

-    public void testBakckingUpState() throws LifecycleException, NoTransitionDefinedException {

-        LifecycleManager lifecycleManager = new LifecycleManagerImpl();

-        lifecycleManager.getNextState(null,"Software_Uploading",VNFOperation.Configure.toString());

-    }

-

-    private List<Event> getNegativeEvents(State state,Set<Event> events) {

-        List<Event> negativeEventList = new ArrayList<>();

-        negativeEventList.addAll(events);

-

-        for(Transition transition: state.getTransitions()){

-            negativeEventList.remove(transition.getEvent());

-        }

-        return negativeEventList;

-    }

-

-    @Test

-    public void testLockStates() throws LifecycleException, NoTransitionDefinedException {

-        StateMachineMetadata metadata = getMetaDataReader().readMetadata();

-        LifecycleManagerImpl lifecycleManager = new LifecycleManagerImpl();

-

-        for(State state: metadata.getStates()) {

-            if(isValidState(state, VALID_LOCK_STATES)) {

-                assertSameNextState(lifecycleManager, state, VNFOperation.Lock);

-                assertSameNextState(lifecycleManager, state, VnfMetaDataReader.VNFOperation.Unlock);

-                assertSameNextState(lifecycleManager, state, VNFOperation.CheckLock);

-            } else {

-                assertNoNextState(lifecycleManager, state, VNFOperation.Lock);

-                assertNoNextState(lifecycleManager, state, VNFOperation.Unlock);

-                assertNoNextState(lifecycleManager, state, VNFOperation.CheckLock);

-            }

-        }

-    }

-

-    private boolean isValidState(State state, State[] validStates) {

-        for(State validState: validStates) {

-            if(validState.equals(state)) {

-                return true;

-            }

-        }

-        return false;

-    }

-

-    private void assertSameNextState(LifecycleManager lifecycleManager, State state, VNFOperation operation)

-            throws LifecycleException, NoTransitionDefinedException {

-        Assert.assertEquals(state.getStateName(),

-                lifecycleManager.getNextState("no-matter", state.getStateName(), operation.toString()));

-    }

-

-    private void assertNoNextState(LifecycleManager lifecycleManager, State state, VNFOperation operation)

-            throws LifecycleException {

-        try {

-            lifecycleManager.getNextState("no-matter", state.getStateName(), operation.toString());

-            Assert.fail("lifecycleManager.getNextState() should fail for state [" + state

-                    + "], operation [" + operation + "]");

-        } catch(NoTransitionDefinedException e) {

-            // this exception is excepted

-        }

-    }

-

-    private StateMetaDataReader getMetaDataReader() {

-        return new VnfMetaDataReader();

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.appc.exceptions.InvalidInputException;
+import org.openecomp.appc.lifecyclemanager.LifecycleManager;
+import org.openecomp.appc.statemachine.StateMetaDataReader;
+import org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl;
+import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;
+import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;
+import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader;
+import org.openecomp.appc.statemachine.impl.readers.VnfMetaDataReader.VNFOperation;
+import org.openecomp.appc.statemachine.objects.Event;
+import org.openecomp.appc.statemachine.objects.State;
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+import org.openecomp.appc.statemachine.objects.Transition;
+
+import java.util.*;
+
+
+public class LifecycleManagerTest {
+
+    private static final State[] VALID_LOCK_STATES = new State[] {
+            new State("instantiated"),
+            new State("configured"),
+            new State("tested"),
+            new State("running"),
+            new State("error"),
+            new State("unknown"),
+            new State("created"),
+            new State("not orchestrated"),
+            new State("stopped"),
+    };
+
+    @Test
+    public void handleEvent() throws InvalidInputException, LifecycleException, NoTransitionDefinedException {
+
+        StateMachineMetadata metadata = getMetaDataReader().readMetadata();
+        LifecycleManagerImpl lifecycleManager = new LifecycleManagerImpl();
+
+        /*
+         * Testing Positive Scenario passing the valid events and validating the StateMachineResponse
+         */
+        for(State state:metadata.getStates()){
+
+            for(Transition transition:state.getTransitions()){
+                Event event = transition.getEvent();
+                State nextStateFromMetadata = transition.getNextState();
+
+                String expectedNextState = lifecycleManager.getNextState(null,state.toString(),event.toString());
+                Assert.assertEquals(expectedNextState,nextStateFromMetadata.toString());
+            }
+        }
+
+        /*
+        Testing Negative Scenarios, 1. Passing the valid Events for which Transition is not defined in
+        Metadata and validating the StateMachineResponse 2. Passing the invalid events which are not
+        registered as events in the StateMachineMetadata and validating StateMachineResponse
+         */
+        for(State state:metadata.getStates()){
+
+            for(Transition transition:state.getTransitions()){
+                List<Event> negativeEvents = getNegativeEvents(state,metadata.getEvents());
+
+                for(Event negativeEvent:negativeEvents){
+                    boolean flag =false;
+                    try{
+                        lifecycleManager.getNextState(null,state.toString(),negativeEvent.toString());
+
+                    }
+                    catch (NoTransitionDefinedException e){
+                        flag =true;
+                    }
+                    Assert.assertEquals(flag,true);
+
+                    flag = false;
+                    try{
+                        lifecycleManager.getNextState(null,state.toString(),"PUT");
+                    }
+                    catch(LifecycleException e){
+                        flag = true;
+                    }
+                    Assert.assertTrue(flag);
+
+                }
+            }
+        }
+    }
+
+    @Test
+    public void testNotOrchestratedState() throws LifecycleException, NoTransitionDefinedException {
+        LifecycleManager lifecycleManager = new LifecycleManagerImpl();
+        String nextState = lifecycleManager.getNextState(
+                null,"NOT ORCHESTRATED",VNFOperation.Configure.toString());
+        Assert.assertEquals(nextState,"Configuring");
+    }
+
+    @Test(expected = NoTransitionDefinedException.class)
+    public void testBakckingUpState() throws LifecycleException, NoTransitionDefinedException {
+        LifecycleManager lifecycleManager = new LifecycleManagerImpl();
+        lifecycleManager.getNextState(null,"Software_Uploading",VNFOperation.Configure.toString());
+    }
+
+    private List<Event> getNegativeEvents(State state,Set<Event> events) {
+        List<Event> negativeEventList = new ArrayList<>();
+        negativeEventList.addAll(events);
+
+        for(Transition transition: state.getTransitions()){
+            negativeEventList.remove(transition.getEvent());
+        }
+        return negativeEventList;
+    }
+
+    @Test
+    public void testLockStates() throws LifecycleException, NoTransitionDefinedException {
+        StateMachineMetadata metadata = getMetaDataReader().readMetadata();
+        LifecycleManagerImpl lifecycleManager = new LifecycleManagerImpl();
+
+        for(State state: metadata.getStates()) {
+            if(isValidState(state, VALID_LOCK_STATES)) {
+                assertSameNextState(lifecycleManager, state, VNFOperation.Lock);
+                assertSameNextState(lifecycleManager, state, VnfMetaDataReader.VNFOperation.Unlock);
+                assertSameNextState(lifecycleManager, state, VNFOperation.CheckLock);
+            } else {
+                assertNoNextState(lifecycleManager, state, VNFOperation.Lock);
+                assertNoNextState(lifecycleManager, state, VNFOperation.Unlock);
+                assertNoNextState(lifecycleManager, state, VNFOperation.CheckLock);
+            }
+        }
+    }
+
+    private boolean isValidState(State state, State[] validStates) {
+        for(State validState: validStates) {
+            if(validState.equals(state)) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    private void assertSameNextState(LifecycleManager lifecycleManager, State state, VNFOperation operation)
+            throws LifecycleException, NoTransitionDefinedException {
+        Assert.assertEquals(state.getStateName(),
+                lifecycleManager.getNextState("no-matter", state.getStateName(), operation.toString()));
+    }
+
+    private void assertNoNextState(LifecycleManager lifecycleManager, State state, VNFOperation operation)
+            throws LifecycleException {
+        try {
+            lifecycleManager.getNextState("no-matter", state.getStateName(), operation.toString());
+            Assert.fail("lifecycleManager.getNextState() should fail for state [" + state
+                    + "], operation [" + operation + "]");
+        } catch(NoTransitionDefinedException e) {
+            // this exception is excepted
+        }
+    }
+
+    private StateMetaDataReader getMetaDataReader() {
+        return new VnfMetaDataReader();
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/OamLifeCycleManagerTest.java b/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/OamLifeCycleManagerTest.java
index d3fe3ea..0a89251 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/OamLifeCycleManagerTest.java
+++ b/appc-lifecycle-management/appc-lifecycle-management-core/src/test/java/org/openecomp/appc/OamLifeCycleManagerTest.java
@@ -1,152 +1,152 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc;

-

-import org.junit.Assert;

-import org.junit.Before;

-import org.junit.Rule;

-import org.junit.Test;

-import org.junit.rules.ExpectedException;

-import org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl;

-import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;

-import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;

-import org.openecomp.appc.statemachine.impl.readers.AppcOamMetaDataReader;

-import org.openecomp.appc.statemachine.impl.readers.AppcOamStates;

-

-import java.util.Arrays;

-import java.util.List;

-

-

-public class OamLifeCycleManagerTest {

-    private static final String VNF_TYPE_APPC = "APPC";

-    private static final String NO_DEFINITION_FORMAT = "No Transition Defined for currentState = %s, event = %s";

-

-    private LifecycleManagerImpl lifecycleManager;

-

-    @Rule

-    public ExpectedException expectedException = ExpectedException.none();

-

-    @Before

-    public void setUp() throws Exception {

-        lifecycleManager = new LifecycleManagerImpl();

-    }

-

-    private void validateProper(String state, String event, String expectedResult)

-            throws LifecycleException, NoTransitionDefinedException {

-        String nextState = lifecycleManager.getNextState(VNF_TYPE_APPC, state, event);

-        Assert.assertEquals(String.format("Should return %s", expectedResult), expectedResult, nextState);

-    }

-

-    private void validateException(String state, String event) throws LifecycleException, NoTransitionDefinedException {

-        expectedException.expect(NoTransitionDefinedException.class);

-        expectedException.expectMessage(String.format(NO_DEFINITION_FORMAT, state, event));

-        lifecycleManager.getNextState(VNF_TYPE_APPC, state, event);

-

-        // Reset to no expectation

-        expectedException = ExpectedException.none();

-    }

-

-    @Test

-    public void testOamStateTransitionForMaintenanceMode() throws Exception {

-        String event = AppcOamMetaDataReader.AppcOperation.MaintenanceMode.name();

-        String expecteResult = AppcOamStates.EnteringMaintenanceMode.toString();

-

-        for (AppcOamStates appcOamStates : AppcOamStates.values()) {

-            String state = appcOamStates.toString();

-            if (appcOamStates == AppcOamStates.Started) {

-                validateProper(state, event, expecteResult);

-            } else {

-                validateException(state, event);

-            }

-        }

-    }

-

-    @Test

-    public void testOamStateTransitionForStart() throws Exception {

-        String event = AppcOamMetaDataReader.AppcOperation.Start.name();

-        String expectResult = AppcOamStates.Starting.toString();

-

-        List<AppcOamStates> goodStates = Arrays.asList(

-                AppcOamStates.MaintenanceMode,

-                AppcOamStates.Stopped,

-                AppcOamStates.Stopping);

-

-        for (AppcOamStates appcOamStates : AppcOamStates.values()) {

-            String state = appcOamStates.toString();

-            if (goodStates.contains(appcOamStates)) {

-                validateProper(state, event, expectResult);

-            } else {

-                validateException(state, event);

-            }

-        }

-    }

-

-    @Test

-    public void testOamStateTransitionForStop() throws Exception {

-        String event = AppcOamMetaDataReader.AppcOperation.Stop.name();

-        String expectResult = AppcOamStates.Stopping.toString();

-

-        List<AppcOamStates> goodStates = Arrays.asList(

-                AppcOamStates.Error,

-                AppcOamStates.EnteringMaintenanceMode,

-                AppcOamStates.MaintenanceMode,

-                AppcOamStates.Started,

-                AppcOamStates.Starting);

-

-        for (AppcOamStates appcOamStates : AppcOamStates.values()) {

-            String state = appcOamStates.toString();

-            if (goodStates.contains(appcOamStates)) {

-                validateProper(state, event, expectResult);

-            } else {

-                validateException(state, event);

-            }

-        }

-    }

-

-

-    @Test

-    public void testOamStateTransitionForRestart() throws Exception {

-        String event = AppcOamMetaDataReader.AppcOperation.Restart.name();

-        String expectResult = AppcOamStates.Restarting.toString();

-

-        List<AppcOamStates> goodStates = Arrays.asList(

-                AppcOamStates.Error,

-                AppcOamStates.EnteringMaintenanceMode,

-                AppcOamStates.MaintenanceMode,

-                AppcOamStates.Started,

-                AppcOamStates.Starting,

-                AppcOamStates.Stopped,

-                AppcOamStates.Stopping);

-

-        for (AppcOamStates appcOamStates : AppcOamStates.values()) {

-            String state = appcOamStates.toString();

-            if (goodStates.contains(appcOamStates)) {

-                validateProper(state, event, expectResult);

-            } else {

-                validateException(state, event);

-            }

-        }

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.openecomp.appc.lifecyclemanager.impl.LifecycleManagerImpl;
+import org.openecomp.appc.lifecyclemanager.objects.LifecycleException;
+import org.openecomp.appc.lifecyclemanager.objects.NoTransitionDefinedException;
+import org.openecomp.appc.statemachine.impl.readers.AppcOamMetaDataReader;
+import org.openecomp.appc.statemachine.impl.readers.AppcOamStates;
+
+import java.util.Arrays;
+import java.util.List;
+
+
+public class OamLifeCycleManagerTest {
+    private static final String VNF_TYPE_APPC = "APPC";
+    private static final String NO_DEFINITION_FORMAT = "No Transition Defined for currentState = %s, event = %s";
+
+    private LifecycleManagerImpl lifecycleManager;
+
+    @Rule
+    public ExpectedException expectedException = ExpectedException.none();
+
+    @Before
+    public void setUp() throws Exception {
+        lifecycleManager = new LifecycleManagerImpl();
+    }
+
+    private void validateProper(String state, String event, String expectedResult)
+            throws LifecycleException, NoTransitionDefinedException {
+        String nextState = lifecycleManager.getNextState(VNF_TYPE_APPC, state, event);
+        Assert.assertEquals(String.format("Should return %s", expectedResult), expectedResult, nextState);
+    }
+
+    private void validateException(String state, String event) throws LifecycleException, NoTransitionDefinedException {
+        expectedException.expect(NoTransitionDefinedException.class);
+        expectedException.expectMessage(String.format(NO_DEFINITION_FORMAT, state, event));
+        lifecycleManager.getNextState(VNF_TYPE_APPC, state, event);
+
+        // Reset to no expectation
+        expectedException = ExpectedException.none();
+    }
+
+    @Test
+    public void testOamStateTransitionForMaintenanceMode() throws Exception {
+        String event = AppcOamMetaDataReader.AppcOperation.MaintenanceMode.name();
+        String expecteResult = AppcOamStates.EnteringMaintenanceMode.toString();
+
+        for (AppcOamStates appcOamStates : AppcOamStates.values()) {
+            String state = appcOamStates.toString();
+            if (appcOamStates == AppcOamStates.Started) {
+                validateProper(state, event, expecteResult);
+            } else {
+                validateException(state, event);
+            }
+        }
+    }
+
+    @Test
+    public void testOamStateTransitionForStart() throws Exception {
+        String event = AppcOamMetaDataReader.AppcOperation.Start.name();
+        String expectResult = AppcOamStates.Starting.toString();
+
+        List<AppcOamStates> goodStates = Arrays.asList(
+                AppcOamStates.MaintenanceMode,
+                AppcOamStates.Stopped,
+                AppcOamStates.Stopping);
+
+        for (AppcOamStates appcOamStates : AppcOamStates.values()) {
+            String state = appcOamStates.toString();
+            if (goodStates.contains(appcOamStates)) {
+                validateProper(state, event, expectResult);
+            } else {
+                validateException(state, event);
+            }
+        }
+    }
+
+    @Test
+    public void testOamStateTransitionForStop() throws Exception {
+        String event = AppcOamMetaDataReader.AppcOperation.Stop.name();
+        String expectResult = AppcOamStates.Stopping.toString();
+
+        List<AppcOamStates> goodStates = Arrays.asList(
+                AppcOamStates.Error,
+                AppcOamStates.EnteringMaintenanceMode,
+                AppcOamStates.MaintenanceMode,
+                AppcOamStates.Started,
+                AppcOamStates.Starting);
+
+        for (AppcOamStates appcOamStates : AppcOamStates.values()) {
+            String state = appcOamStates.toString();
+            if (goodStates.contains(appcOamStates)) {
+                validateProper(state, event, expectResult);
+            } else {
+                validateException(state, event);
+            }
+        }
+    }
+
+
+    @Test
+    public void testOamStateTransitionForRestart() throws Exception {
+        String event = AppcOamMetaDataReader.AppcOperation.Restart.name();
+        String expectResult = AppcOamStates.Restarting.toString();
+
+        List<AppcOamStates> goodStates = Arrays.asList(
+                AppcOamStates.Error,
+                AppcOamStates.EnteringMaintenanceMode,
+                AppcOamStates.MaintenanceMode,
+                AppcOamStates.Started,
+                AppcOamStates.Starting,
+                AppcOamStates.Stopped,
+                AppcOamStates.Stopping);
+
+        for (AppcOamStates appcOamStates : AppcOamStates.values()) {
+            String state = appcOamStates.toString();
+            if (goodStates.contains(appcOamStates)) {
+                validateProper(state, event, expectResult);
+            } else {
+                validateException(state, event);
+            }
+        }
+    }
+}
diff --git a/appc-lifecycle-management/appc-lifecycle-management-features/src/main/resources/features.xml b/appc-lifecycle-management/appc-lifecycle-management-features/src/main/resources/features.xml
index 9700f77..635ee67 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-features/src/main/resources/features.xml
+++ b/appc-lifecycle-management/appc-lifecycle-management-features/src/main/resources/features.xml
@@ -1,38 +1,38 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<!--

+<?xml version="1.0" encoding="UTF-8"?>
+<!--
   ============LICENSE_START=======================================================
   ONAP : APPC
   ================================================================================
   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

-  

-       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.

-  

+  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
+  
+       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=========================================================

-  -->

-

-

-<features name="appc-lifecycle-management-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"

-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-    xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0  http://karaf.apache.org/xmlns/features/v1.2.0">

-

-    <feature name='appc-lifecycle-management' description="application executor" version='${project.version}'>

-        <bundle dependency="true">mvn:org.openecomp.appc/appc-common/${project.version}</bundle>

-        <bundle>mvn:org.openecomp.appc/state-machine-lib/${project.version}</bundle>

-        <bundle>mvn:org.openecomp.appc/appc-lifecycle-management-api/${project.version}</bundle>

-        <bundle>mvn:org.openecomp.appc/appc-lifecycle-management-core/${project.version}</bundle>

-    </feature>

-

-</features>

+  ============LICENSE_END=========================================================
+  -->
+
+
+<features name="appc-lifecycle-management-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0  http://karaf.apache.org/xmlns/features/v1.2.0">
+
+    <feature name='appc-lifecycle-management' description="application executor" version='${project.version}'>
+        <bundle dependency="true">mvn:org.openecomp.appc/appc-common/${project.version}</bundle>
+        <bundle>mvn:org.openecomp.appc/state-machine-lib/${project.version}</bundle>
+        <bundle>mvn:org.openecomp.appc/appc-lifecycle-management-api/${project.version}</bundle>
+        <bundle>mvn:org.openecomp.appc/appc-lifecycle-management-core/${project.version}</bundle>
+    </feature>
+
+</features>
diff --git a/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_installer_zip.xml b/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_installer_zip.xml
index 4b7b6f3..df18e18 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_installer_zip.xml
+++ b/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_installer_zip.xml
@@ -1,60 +1,60 @@
-<!--

+<!--
   ============LICENSE_START=======================================================
   ONAP : APPC
   ================================================================================
   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

-  

-       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.

-  

+  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
+  
+       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=========================================================

-  -->

-

-<!-- Defines how we build the .zip file which is our distribution. -->

-

-<assembly

-        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"

-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">

-    <id>controller</id>

-    <formats>

-        <format>zip</format>

-    </formats>

-

-    <!--  we want "system" and related files right at the root level

-          as this file is suppose to be unzip on top of a karaf

-          distro. -->

-    <includeBaseDirectory>false</includeBaseDirectory>

-

-    <fileSets>

-        <fileSet>

-            <directory>target/stage/</directory>

-            <outputDirectory>${application.name}</outputDirectory>

-            <fileMode>755</fileMode>

-            <includes>

-                <include>*.sh</include>

-            </includes>

-        </fileSet>

-        <fileSet>

-            <directory>target/stage/</directory>

-            <outputDirectory>${application.name}</outputDirectory>

-            <fileMode>644</fileMode>

-            <excludes>

-                <exclude>*.sh</exclude>

-            </excludes>

-        </fileSet>

-    </fileSets>

-

-</assembly>

+  ============LICENSE_END=========================================================
+  -->
+
+<!-- Defines how we build the .zip file which is our distribution. -->
+
+<assembly
+        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+    <id>controller</id>
+    <formats>
+        <format>zip</format>
+    </formats>
+
+    <!--  we want "system" and related files right at the root level
+          as this file is suppose to be unzip on top of a karaf
+          distro. -->
+    <includeBaseDirectory>false</includeBaseDirectory>
+
+    <fileSets>
+        <fileSet>
+            <directory>target/stage/</directory>
+            <outputDirectory>${application.name}</outputDirectory>
+            <fileMode>755</fileMode>
+            <includes>
+                <include>*.sh</include>
+            </includes>
+        </fileSet>
+        <fileSet>
+            <directory>target/stage/</directory>
+            <outputDirectory>${application.name}</outputDirectory>
+            <fileMode>644</fileMode>
+            <excludes>
+                <exclude>*.sh</exclude>
+            </excludes>
+        </fileSet>
+    </fileSets>
+
+</assembly>
diff --git a/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_mvnrepo_zip.xml b/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_mvnrepo_zip.xml
index e735845..4278b4d 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_mvnrepo_zip.xml
+++ b/appc-lifecycle-management/appc-lifecycle-management-installer/src/assembly/assemble_mvnrepo_zip.xml
@@ -1,51 +1,51 @@
-<!--

+<!--
   ============LICENSE_START=======================================================
   ONAP : APPC
   ================================================================================
   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

-  

-       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.

-  

+  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
+  
+       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=========================================================

-  -->

-

-<!-- Defines how we build the .zip file which is our distribution. -->

-

-<assembly

-        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"

-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0

-         http://maven.apache.org/xsd/assembly-1.1.0.xsd">

-    <id>controller</id>

-    <formats>

-        <format>zip</format>

-    </formats>

-

-    <!--  we want "system" and related files right at the root level

-          as this file is suppose to be unzip on top of a karaf

-          distro. -->

-    <includeBaseDirectory>false</includeBaseDirectory>

-

-    <fileSets>

-        <fileSet>

-            <directory>target/assembly/</directory>

-            <outputDirectory>.</outputDirectory>

-            <excludes>

-            </excludes>

-        </fileSet>

-    </fileSets>

-

-</assembly>

+  ============LICENSE_END=========================================================
+  -->
+
+<!-- Defines how we build the .zip file which is our distribution. -->
+
+<assembly
+        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0
+         http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+    <id>controller</id>
+    <formats>
+        <format>zip</format>
+    </formats>
+
+    <!--  we want "system" and related files right at the root level
+          as this file is suppose to be unzip on top of a karaf
+          distro. -->
+    <includeBaseDirectory>false</includeBaseDirectory>
+
+    <fileSets>
+        <fileSet>
+            <directory>target/assembly/</directory>
+            <outputDirectory>.</outputDirectory>
+            <excludes>
+            </excludes>
+        </fileSet>
+    </fileSets>
+
+</assembly>
diff --git a/appc-lifecycle-management/appc-lifecycle-management-installer/src/main/resources/scripts/install-feature.sh b/appc-lifecycle-management/appc-lifecycle-management-installer/src/main/resources/scripts/install-feature.sh
index 4a7e7a1..d3596c6 100644
--- a/appc-lifecycle-management/appc-lifecycle-management-installer/src/main/resources/scripts/install-feature.sh
+++ b/appc-lifecycle-management/appc-lifecycle-management-installer/src/main/resources/scripts/install-feature.sh
@@ -1,63 +1,63 @@
-###

+###
 # ============LICENSE_START=======================================================
 # ONAP : APPC
 # ================================================================================
 # 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

-# 

-#      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.

-# 

+# 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
+# 
+#      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=========================================================

-###

-

-#!/bin/bash

-

-ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}

-ODL_KARAF_CLIENT=${ODL_KARAF_CLIENT:-${ODL_HOME}/bin/client}

-ODL_KARAF_CLIENT_OPTS=${ODL_KARAF_CLIENT_OPTS:-"-u karaf"}

-INSTALLERDIR=$(dirname $0)

-

-REPOZIP=${INSTALLERDIR}/${features.boot}-${project.version}.zip

-

-if [ -f ${REPOZIP} ]

-then

-    unzip -n -d ${ODL_HOME} ${REPOZIP}

-else

-    echo "ERROR : repo zip ($REPOZIP) not found"

-    exit 1

-fi

-

-COUNT=0

-while [ $COUNT -lt 10 ]; do

-    ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:repo-add ${features.repositories} 2> /tmp/installErr

-    cat /tmp/installErr

-    if grep -q 'Failed to get the session' /tmp/installErr; then

-        sleep 10

-    else

-        let COUNT=10

-    fi

-    let COUNT=COUNT+1

-done

-COUNT=0

-while [ $COUNT -lt 10 ]; do

-    ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:install ${features.boot} 2> /tmp/installErr

-        cat /tmp/installErr

-    if grep -q 'Failed to get the session' /tmp/installErr; then

-        sleep 10

-    else

-        let COUNT=10

-    fi

-    let COUNT=COUNT+1

-done

+# ============LICENSE_END=========================================================
+###
+
+#!/bin/bash
+
+ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
+ODL_KARAF_CLIENT=${ODL_KARAF_CLIENT:-${ODL_HOME}/bin/client}
+ODL_KARAF_CLIENT_OPTS=${ODL_KARAF_CLIENT_OPTS:-"-u karaf"}
+INSTALLERDIR=$(dirname $0)
+
+REPOZIP=${INSTALLERDIR}/${features.boot}-${project.version}.zip
+
+if [ -f ${REPOZIP} ]
+then
+    unzip -n -d ${ODL_HOME} ${REPOZIP}
+else
+    echo "ERROR : repo zip ($REPOZIP) not found"
+    exit 1
+fi
+
+COUNT=0
+while [ $COUNT -lt 10 ]; do
+    ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:repo-add ${features.repositories} 2> /tmp/installErr
+    cat /tmp/installErr
+    if grep -q 'Failed to get the session' /tmp/installErr; then
+        sleep 10
+    else
+        let COUNT=10
+    fi
+    let COUNT=COUNT+1
+done
+COUNT=0
+while [ $COUNT -lt 10 ]; do
+    ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:install ${features.boot} 2> /tmp/installErr
+        cat /tmp/installErr
+    if grep -q 'Failed to get the session' /tmp/installErr; then
+        sleep 10
+    else
+        let COUNT=10
+    fi
+    let COUNT=COUNT+1
+done
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMachine.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMachine.java
index 1c74861..bf08680 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMachine.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMachine.java
@@ -1,34 +1,34 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine;

-

-import org.openecomp.appc.exceptions.InvalidInputException;

-import org.openecomp.appc.statemachine.objects.Event;

-import org.openecomp.appc.statemachine.objects.State;

-import org.openecomp.appc.statemachine.objects.StateMachineResponse;

-

-public interface StateMachine {

-    StateMachineResponse handleEvent(State currentState, Event event) throws InvalidInputException;

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine;
+
+import org.openecomp.appc.exceptions.InvalidInputException;
+import org.openecomp.appc.statemachine.objects.Event;
+import org.openecomp.appc.statemachine.objects.State;
+import org.openecomp.appc.statemachine.objects.StateMachineResponse;
+
+public interface StateMachine {
+    StateMachineResponse handleEvent(State currentState, Event event) throws InvalidInputException;
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMetaDataReader.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMetaDataReader.java
index 0ddbd2f..6e60ee4 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMetaDataReader.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/StateMetaDataReader.java
@@ -1,31 +1,31 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine;

-

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-

-public interface StateMetaDataReader {

-    StateMachineMetadata readMetadata();

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine;
+
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+
+public interface StateMetaDataReader {
+    StateMachineMetadata readMetadata();
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineFactory.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineFactory.java
index 6c7951f..c4b49b7 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineFactory.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineFactory.java
@@ -1,40 +1,40 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl;

-

-import org.openecomp.appc.statemachine.StateMachine;

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-

-

-public class StateMachineFactory {

-

-    private StateMachineFactory(){

-

-    }

-

-    public static StateMachine getStateMachine(StateMachineMetadata metadata){

-        return new StateMachineImpl(metadata);

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl;
+
+import org.openecomp.appc.statemachine.StateMachine;
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+
+
+public class StateMachineFactory {
+
+    private StateMachineFactory(){
+
+    }
+
+    public static StateMachine getStateMachine(StateMachineMetadata metadata){
+        return new StateMachineImpl(metadata);
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineImpl.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineImpl.java
index 124cf36..9fc1233 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineImpl.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/StateMachineImpl.java
@@ -1,98 +1,98 @@
-/*-

- * ============LICENSE_START=======================================================

- * ONAP : APPC

- * ================================================================================

- * 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

- * 

- *      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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl;

-

-import java.util.HashSet;

-import java.util.Set;

-

-import org.openecomp.appc.exceptions.InvalidInputException;

-import org.openecomp.appc.statemachine.StateMachine;

-import org.openecomp.appc.statemachine.objects.Event;

-import org.openecomp.appc.statemachine.objects.Response;

-import org.openecomp.appc.statemachine.objects.State;

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-import org.openecomp.appc.statemachine.objects.StateMachineResponse;

-import org.openecomp.appc.statemachine.objects.Transition;

-

-

-public class StateMachineImpl implements StateMachine {

-

-    private final Set<State> states;

-

-    private final Set<Event> events;

-

-    StateMachineImpl(StateMachineMetadata metadata){

-        this.states = new HashSet<>();

-        this.states.addAll(metadata.getStates());

-        this.events = new HashSet<>();

-        this.events.addAll(metadata.getEvents());

-    }

-

-    public StateMachineResponse handleEvent(State inputState, Event event) throws InvalidInputException{

-

-        if(!validateInputs(inputState,event)){

-            throw new InvalidInputException("VNF State or incoming event is invalid. State = " +inputState + " event = " + event );

-        }

-

-        StateMachineResponse response = new StateMachineResponse();

-        State currentState = null,nextState = null;

-        for(State stateInSet:states){

-            if(stateInSet.equals(inputState)){

-                currentState = stateInSet;

-                break;

-            }

-        }

-        if (currentState != null) {

-            for (Transition transition : currentState.getTransitions()) {

-                if (event.equals(transition.getEvent())) {

-                    nextState = transition.getNextState();

-                }

-            }

-        }

-        if(nextState == null){

-            response.setResponse(Response.NO_TRANSITION_DEFINED);

-        }

-        else if(inputState.equals(nextState)){

-            response.setResponse(Response.NO_STATE_CHANGE);

-        }

-        else{

-            response.setResponse(Response.VALID_TRANSITION);

-        }

-        response.setNextState(nextState);

-        return response;

-    }

-

-    private boolean validateInputs(State state,Event event) {

-        return state != null && event != null && this.states.contains(state) && this.events.contains(event);

-    }

-

-    @Override

-    public String toString() {

-        return "StateMachineImpl{" +

-                "states=" + states +

-                ", events=" + events +

-                '}';

-    }

-}

+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APPC
+ * ================================================================================
+ * 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
+ * 
+ *      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=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.openecomp.appc.exceptions.InvalidInputException;
+import org.openecomp.appc.statemachine.StateMachine;
+import org.openecomp.appc.statemachine.objects.Event;
+import org.openecomp.appc.statemachine.objects.Response;
+import org.openecomp.appc.statemachine.objects.State;
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+import org.openecomp.appc.statemachine.objects.StateMachineResponse;
+import org.openecomp.appc.statemachine.objects.Transition;
+
+
+public class StateMachineImpl implements StateMachine {
+
+    private final Set<State> states;
+
+    private final Set<Event> events;
+
+    StateMachineImpl(StateMachineMetadata metadata){
+        this.states = new HashSet<>();
+        this.states.addAll(metadata.getStates());
+        this.events = new HashSet<>();
+        this.events.addAll(metadata.getEvents());
+    }
+
+    public StateMachineResponse handleEvent(State inputState, Event event) throws InvalidInputException{
+
+        if(!validateInputs(inputState,event)){
+            throw new InvalidInputException("VNF State or incoming event is invalid. State = " +inputState + " event = " + event );
+        }
+
+        StateMachineResponse response = new StateMachineResponse();
+        State currentState = null,nextState = null;
+        for(State stateInSet:states){
+            if(stateInSet.equals(inputState)){
+                currentState = stateInSet;
+                break;
+            }
+        }
+        if (currentState != null) {
+            for (Transition transition : currentState.getTransitions()) {
+                if (event.equals(transition.getEvent())) {
+                    nextState = transition.getNextState();
+                }
+            }
+        }
+        if(nextState == null){
+            response.setResponse(Response.NO_TRANSITION_DEFINED);
+        }
+        else if(inputState.equals(nextState)){
+            response.setResponse(Response.NO_STATE_CHANGE);
+        }
+        else{
+            response.setResponse(Response.VALID_TRANSITION);
+        }
+        response.setNextState(nextState);
+        return response;
+    }
+
+    private boolean validateInputs(State state,Event event) {
+        return state != null && event != null && this.states.contains(state) && this.events.contains(event);
+    }
+
+    @Override
+    public String toString() {
+        return "StateMachineImpl{" +
+                "states=" + states +
+                ", events=" + events +
+                '}';
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamMetaDataReader.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamMetaDataReader.java
index e160e7f..3c1f094 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamMetaDataReader.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamMetaDataReader.java
@@ -1,107 +1,107 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl.readers;

-

-import org.openecomp.appc.statemachine.StateMetaDataReader;

-import org.openecomp.appc.statemachine.objects.Event;

-import org.openecomp.appc.statemachine.objects.State;

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-

-public class AppcOamMetaDataReader implements StateMetaDataReader {

-

-    public enum AppcOperation {

-        MaintenanceMode,

-        Restart,

-        Start,

-        Stop

-    }

-

-    @Override

-    public StateMachineMetadata readMetadata() {

-        State NOT_INSTANTIATED = new State(AppcOamStates.NotInstantiated.toString());

-        State INSTANTIATED = new State(AppcOamStates.Instantiated.toString());

-        State RESTARTING = new State(AppcOamStates.Restarting.toString());

-        State STARTING = new State(AppcOamStates.Starting.toString());

-        State STARTED = new State(AppcOamStates.Started.toString());

-        State ENTERING_MAINTENANCE_MODE = new State(AppcOamStates.EnteringMaintenanceMode.toString());

-        State MAINTENANCE_MODE = new State(AppcOamStates.MaintenanceMode.toString());

-        State ERROR = new State(AppcOamStates.Error.toString());

-        State UNKNOWN = new State(AppcOamStates.Unknown.toString());

-        State STOPPING = new State(AppcOamStates.Stopping.toString());

-        State STOPPED = new State(AppcOamStates.Stopped.toString());

-

-        Event START = new Event(AppcOperation.Start.toString());

-        Event STOP = new Event(AppcOperation.Stop.toString());

-        Event MAINTENANCE_MODE_EVENT = new Event(AppcOperation.MaintenanceMode.toString());

-        Event RESTART = new Event(AppcOperation.Restart.toString());

-

-        StateMachineMetadata.StateMachineMetadataBuilder builder = new StateMachineMetadata

-                .StateMachineMetadataBuilder();

-

-        builder = builder.addState(NOT_INSTANTIATED);

-        builder = builder.addState(INSTANTIATED);

-        builder = builder.addState(STARTING);

-        builder = builder.addState(STARTED);

-        builder = builder.addState(ERROR);

-        builder = builder.addState(UNKNOWN);

-        builder = builder.addState(STOPPING);

-        builder = builder.addState(STOPPED);

-        builder = builder.addState(ENTERING_MAINTENANCE_MODE);

-        builder = builder.addState(MAINTENANCE_MODE);

-        builder = builder.addState(RESTARTING);

-

-        builder = builder.addEvent(START);

-        builder = builder.addEvent(STOP);

-        builder = builder.addEvent(RESTART);

-        builder = builder.addEvent(MAINTENANCE_MODE_EVENT);

-

-        /*

-         *  for addTransition:

-         *  param 1: current state; param 2: received command/request; param 3: new transition state

-         */

-        // start

-        builder = builder.addTransition(STOPPED,                   START, STARTING);

-        builder = builder.addTransition(MAINTENANCE_MODE,          START, STARTING);

-        builder = builder.addTransition(ERROR,                     START, STARTING);

-        // stop

-        builder = builder.addTransition(STARTED,                   STOP, STOPPING);

-        builder = builder.addTransition(STARTING,                  STOP, STOPPING);

-        builder = builder.addTransition(ENTERING_MAINTENANCE_MODE, STOP, STOPPING);

-        builder = builder.addTransition(MAINTENANCE_MODE,          STOP, STOPPING);

-        builder = builder.addTransition(ERROR,                     STOP, STOPPING);

-        // maintenance mode

-        builder = builder.addTransition(

-                STARTED, MAINTENANCE_MODE_EVENT, ENTERING_MAINTENANCE_MODE);

-        // restart

-        builder = builder.addTransition(STOPPED,                   RESTART, RESTARTING);

-        builder = builder.addTransition(STARTING,                  RESTART, RESTARTING);

-        builder = builder.addTransition(STARTED,                   RESTART, RESTARTING);

-        builder = builder.addTransition(ENTERING_MAINTENANCE_MODE, RESTART, RESTARTING);

-        builder = builder.addTransition(MAINTENANCE_MODE,          RESTART, RESTARTING);

-        builder = builder.addTransition(ERROR,                     RESTART, RESTARTING);

-

-        return builder.build();

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl.readers;
+
+import org.openecomp.appc.statemachine.StateMetaDataReader;
+import org.openecomp.appc.statemachine.objects.Event;
+import org.openecomp.appc.statemachine.objects.State;
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+
+public class AppcOamMetaDataReader implements StateMetaDataReader {
+
+    public enum AppcOperation {
+        MaintenanceMode,
+        Restart,
+        Start,
+        Stop
+    }
+
+    @Override
+    public StateMachineMetadata readMetadata() {
+        State NOT_INSTANTIATED = new State(AppcOamStates.NotInstantiated.toString());
+        State INSTANTIATED = new State(AppcOamStates.Instantiated.toString());
+        State RESTARTING = new State(AppcOamStates.Restarting.toString());
+        State STARTING = new State(AppcOamStates.Starting.toString());
+        State STARTED = new State(AppcOamStates.Started.toString());
+        State ENTERING_MAINTENANCE_MODE = new State(AppcOamStates.EnteringMaintenanceMode.toString());
+        State MAINTENANCE_MODE = new State(AppcOamStates.MaintenanceMode.toString());
+        State ERROR = new State(AppcOamStates.Error.toString());
+        State UNKNOWN = new State(AppcOamStates.Unknown.toString());
+        State STOPPING = new State(AppcOamStates.Stopping.toString());
+        State STOPPED = new State(AppcOamStates.Stopped.toString());
+
+        Event START = new Event(AppcOperation.Start.toString());
+        Event STOP = new Event(AppcOperation.Stop.toString());
+        Event MAINTENANCE_MODE_EVENT = new Event(AppcOperation.MaintenanceMode.toString());
+        Event RESTART = new Event(AppcOperation.Restart.toString());
+
+        StateMachineMetadata.StateMachineMetadataBuilder builder = new StateMachineMetadata
+                .StateMachineMetadataBuilder();
+
+        builder = builder.addState(NOT_INSTANTIATED);
+        builder = builder.addState(INSTANTIATED);
+        builder = builder.addState(STARTING);
+        builder = builder.addState(STARTED);
+        builder = builder.addState(ERROR);
+        builder = builder.addState(UNKNOWN);
+        builder = builder.addState(STOPPING);
+        builder = builder.addState(STOPPED);
+        builder = builder.addState(ENTERING_MAINTENANCE_MODE);
+        builder = builder.addState(MAINTENANCE_MODE);
+        builder = builder.addState(RESTARTING);
+
+        builder = builder.addEvent(START);
+        builder = builder.addEvent(STOP);
+        builder = builder.addEvent(RESTART);
+        builder = builder.addEvent(MAINTENANCE_MODE_EVENT);
+
+        /*
+         *  for addTransition:
+         *  param 1: current state; param 2: received command/request; param 3: new transition state
+         */
+        // start
+        builder = builder.addTransition(STOPPED,                   START, STARTING);
+        builder = builder.addTransition(MAINTENANCE_MODE,          START, STARTING);
+        builder = builder.addTransition(ERROR,                     START, STARTING);
+        // stop
+        builder = builder.addTransition(STARTED,                   STOP, STOPPING);
+        builder = builder.addTransition(STARTING,                  STOP, STOPPING);
+        builder = builder.addTransition(ENTERING_MAINTENANCE_MODE, STOP, STOPPING);
+        builder = builder.addTransition(MAINTENANCE_MODE,          STOP, STOPPING);
+        builder = builder.addTransition(ERROR,                     STOP, STOPPING);
+        // maintenance mode
+        builder = builder.addTransition(
+                STARTED, MAINTENANCE_MODE_EVENT, ENTERING_MAINTENANCE_MODE);
+        // restart
+        builder = builder.addTransition(STOPPED,                   RESTART, RESTARTING);
+        builder = builder.addTransition(STARTING,                  RESTART, RESTARTING);
+        builder = builder.addTransition(STARTED,                   RESTART, RESTARTING);
+        builder = builder.addTransition(ENTERING_MAINTENANCE_MODE, RESTART, RESTARTING);
+        builder = builder.addTransition(MAINTENANCE_MODE,          RESTART, RESTARTING);
+        builder = builder.addTransition(ERROR,                     RESTART, RESTARTING);
+
+        return builder.build();
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStates.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStates.java
index 2f000d9..a63f356 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStates.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStates.java
@@ -1,56 +1,56 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl.readers;

-

-import org.osgi.framework.Bundle;

-

-public enum AppcOamStates {

-    EnteringMaintenanceMode(0),

-    Error(0),

-    Instantiated(Bundle.INSTALLED),

-    MaintenanceMode(0),

-    NotInstantiated(Bundle.UNINSTALLED),

-    Restarting(0),

-    Started(Bundle.ACTIVE),

-    Starting(Bundle.STARTING),

-    Stopped(Bundle.RESOLVED),

-    Stopping(Bundle.STOPPING),

-    Unknown(0);

-

-    int osgiBundleState;

-

-    AppcOamStates(Integer bundleState) {

-        osgiBundleState = bundleState;

-    }

-

-    public static AppcOamStates getOamStateFromBundleState(int bundleState) {

-        for (AppcOamStates aState : values()) {

-            if (aState.osgiBundleState == bundleState) {

-                return aState;

-            }

-        }

-        return Unknown;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl.readers;
+
+import org.osgi.framework.Bundle;
+
+public enum AppcOamStates {
+    EnteringMaintenanceMode(0),
+    Error(0),
+    Instantiated(Bundle.INSTALLED),
+    MaintenanceMode(0),
+    NotInstantiated(Bundle.UNINSTALLED),
+    Restarting(0),
+    Started(Bundle.ACTIVE),
+    Starting(Bundle.STARTING),
+    Stopped(Bundle.RESOLVED),
+    Stopping(Bundle.STOPPING),
+    Unknown(0);
+
+    int osgiBundleState;
+
+    AppcOamStates(Integer bundleState) {
+        osgiBundleState = bundleState;
+    }
+
+    public static AppcOamStates getOamStateFromBundleState(int bundleState) {
+        for (AppcOamStates aState : values()) {
+            if (aState.osgiBundleState == bundleState) {
+                return aState;
+            }
+        }
+        return Unknown;
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/VnfMetaDataReader.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/VnfMetaDataReader.java
index e3e72f6..8f2a69f 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/VnfMetaDataReader.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/impl/readers/VnfMetaDataReader.java
@@ -1,483 +1,483 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl.readers;

-

-import org.openecomp.appc.statemachine.StateMetaDataReader;

-import org.openecomp.appc.lifecyclemanager.objects.VNFOperationOutcome;

-import org.openecomp.appc.statemachine.objects.Event;

-import org.openecomp.appc.statemachine.objects.State;

-import org.openecomp.appc.statemachine.objects.StateMachineMetadata;

-

-public class VnfMetaDataReader implements StateMetaDataReader {

-

-    public enum VNFOperation {

-

-        Configure, Test, HealthCheck, Start, Terminate, Restart, Rebuild, Stop, ConfigModify,

-        ConfigScaleOut,ConfigRestore,Backup, Snapshot,

-        SoftwareUpload, LiveUpgrade, Rollback, Sync, Audit, Test_lic, Migrate, Evacuate,

-        ConfigBackup, ConfigBackupDelete, ConfigExport,

-        Lock(true), Unlock(true), CheckLock(true), StartApplication,StopApplication;

-

-        private boolean builtIn;

-

-        VNFOperation(boolean builtIn) {

-            this.builtIn = builtIn;

-        }

-

-        VNFOperation() {

-            this(false);

-        }

-    }

-

-    private enum VNFStates {

-        Not_Instantiated, Instantiated, Configuring, Configured, Testing, Tested, Rebuilding, Restarting, Starting,

-        Error, Running, Unknown, Terminating, Stopping, Stopped,

-        Backing_Up, Snapshotting, Software_Uploading, Upgrading, Rollbacking, Licensing, Migrating, Evacuating,

-        NOT_ORCHESTRATED("NOT ORCHESTRATED"), Created;

-

-        String stateName;

-

-        VNFStates(String name) {

-            this.stateName = name;

-        }

-

-        VNFStates() {

-            this.stateName = name();

-        }

-

-        @Override

-        public String toString() {

-            return this.stateName;

-        }

-    }

-

-    public StateMachineMetadata readMetadata() {

-        {

-            State NOT_INSTANTIATED = new State(VNFStates.Not_Instantiated.toString());

-            State INSTANTIATED = new State(VNFStates.Instantiated.toString());

-            State CONFIGURING = new State(VNFStates.Configuring.toString());

-            State CONFIGURED = new State(VNFStates.Configured.toString());

-            State TESTING = new State(VNFStates.Testing.toString());

-            State TESTED = new State(VNFStates.Tested.toString());

-            State REBUILDING = new State(VNFStates.Rebuilding.toString());

-            State RESTARTING = new State(VNFStates.Restarting.toString());

-            State STARTING = new State(VNFStates.Starting.toString());

-            State ERROR = new State(VNFStates.Error.toString());

-            State RUNNING = new State(VNFStates.Running.toString());

-            State UNKNOWN = new State(VNFStates.Unknown.toString());

-            State TERMINATING = new State(VNFStates.Terminating.toString());

-            State STOPPING = new State(VNFStates.Stopping.toString());

-            State STOPPED = new State(VNFStates.Stopped.toString());

-            State NOT_ORCHESTRATED = new State(VNFStates.NOT_ORCHESTRATED.toString());

-

-            State BACKING_UP = new State(VNFStates.Backing_Up.toString());

-            State SNAPSHOTTING = new State(VNFStates.Snapshotting.toString());

-            State SOFTWARE_UPLOADING = new State(VNFStates.Software_Uploading.toString());

-            State UPGRADING = new State(VNFStates.Upgrading.toString());

-            State ROLLBACKING = new State(VNFStates.Rollbacking.toString());

-

-            State MIGRATING = new State(VNFStates.Migrating.toString());

-            State EVACUATING = new State(VNFStates.Evacuating.toString());

-            State CREATED= new State(VNFStates.Created.toString());

-

-            Event START_APPLICATION = new Event(VNFOperation.StartApplication.toString());

-            Event CONFIGURE = new Event(VNFOperation.Configure.toString());

-            Event HEALTHCHECK = new Event(VNFOperation.HealthCheck.toString());

-            Event TEST = new Event(VNFOperation.Test.toString());

-            Event START = new Event(VNFOperation.Start.toString());

-            Event TERMINATE = new Event(VNFOperation.Terminate.toString());

-            Event RESTART = new Event(VNFOperation.Restart.toString());

-            Event REBUILD = new Event(VNFOperation.Rebuild.toString());

-            Event STOP = new Event(VNFOperation.Stop.toString());

-            Event CONFIG_MODIFY = new Event(VNFOperation.ConfigModify.toString());

-            Event CONFIG_SCALEOUT = new Event(VNFOperation.ConfigScaleOut.toString());

-            Event CONFIG_RESTORE = new Event(VNFOperation.ConfigRestore.toString());

-            Event BACKUP = new Event(VNFOperation.Backup.toString());

-            Event SNAPSHOT = new Event(VNFOperation.Snapshot.toString());

-            Event SOFTWARE_UPLOAD = new Event(VNFOperation.SoftwareUpload.toString());

-            Event LIVE_UPGRADE = new Event(VNFOperation.LiveUpgrade.toString());

-            Event ROLLBACK = new Event(VNFOperation.Rollback.toString());

-            Event SYNC = new Event(VNFOperation.Sync.toString());

-            Event AUDIT = new Event(VNFOperation.Audit.toString());

-            Event MIGRATE = new Event(VNFOperation.Migrate.toString());

-            Event EVACUATE = new Event(VNFOperation.Evacuate.toString());

-            Event CONFIG_BACKUP = new Event(VNFOperation.ConfigBackup.toString());

-            Event CONFIG_BACKUP_DELETE = new Event(VNFOperation.ConfigBackupDelete.toString());

-            Event CONFIG_EXPORT = new Event(VNFOperation.ConfigExport.toString());

-            Event STOP_APPLICATION= new Event(VNFOperation.StopApplication.toString());

-

-            Event LOCK = new Event(VNFOperation.Lock.toString());

-            Event UNLOCK = new Event(VNFOperation.Unlock.toString());

-            Event CHECKLOCK = new Event(VNFOperation.CheckLock.toString());

-

-            Event SUCCESS = new Event(VNFOperationOutcome.SUCCESS.toString());

-            Event FAILURE = new Event(VNFOperationOutcome.FAILURE.toString());

-

-

-            StateMachineMetadata.StateMachineMetadataBuilder builder = new StateMachineMetadata.StateMachineMetadataBuilder();

-

-            builder = builder.addState(NOT_INSTANTIATED);

-            builder = builder.addState(INSTANTIATED);

-            builder = builder.addState(CONFIGURING);

-            builder = builder.addState(CONFIGURED);

-            builder = builder.addState(TESTING);

-            builder = builder.addState(TESTED);

-            builder = builder.addState(REBUILDING);

-            builder = builder.addState(RESTARTING);

-            builder = builder.addState(STARTING);

-            builder = builder.addState(ERROR);

-            builder = builder.addState(RUNNING);

-            builder = builder.addState(UNKNOWN);

-            builder = builder.addState(TERMINATING);

-            builder = builder.addState(STOPPING);

-            builder = builder.addState(STOPPED);

-

-            builder = builder.addState(BACKING_UP);

-            builder = builder.addState(SNAPSHOTTING);

-            builder = builder.addState(SOFTWARE_UPLOADING);

-            builder = builder.addState(UPGRADING);

-            builder = builder.addState(ROLLBACKING);

-            builder = builder.addState(MIGRATING);

-            builder = builder.addState(EVACUATING);

-            builder = builder.addState(NOT_ORCHESTRATED);

-            builder = builder.addState(CREATED);

-            builder = builder.addEvent(START_APPLICATION);

-            builder = builder.addEvent(CONFIGURE);

-            builder = builder.addEvent(TEST);

-            builder = builder.addEvent(START);

-            builder = builder.addEvent(TERMINATE);

-            builder = builder.addEvent(RESTART);

-            builder = builder.addEvent(REBUILD);

-            builder = builder.addEvent(SUCCESS);

-            builder = builder.addEvent(FAILURE);

-            builder = builder.addEvent(STOP);

-            builder = builder.addEvent(CONFIG_MODIFY);

-            builder = builder.addEvent(CONFIG_SCALEOUT);

-            builder = builder.addEvent(CONFIG_RESTORE);

-            builder = builder.addEvent(HEALTHCHECK);

-            builder = builder.addEvent(BACKUP);

-            builder = builder.addEvent(SNAPSHOT);

-            builder = builder.addEvent(SOFTWARE_UPLOAD);

-            builder = builder.addEvent(LIVE_UPGRADE);

-            builder = builder.addEvent(ROLLBACK);

-            builder = builder.addEvent(SYNC);

-            builder = builder.addEvent(AUDIT);

-            builder = builder.addEvent(MIGRATE);

-            builder = builder.addEvent(EVACUATE);

-            builder = builder.addEvent(LOCK);

-            builder = builder.addEvent(UNLOCK);

-            builder = builder.addEvent(CHECKLOCK);

-            builder = builder.addEvent(CONFIG_BACKUP);

-            builder = builder.addEvent(CONFIG_BACKUP_DELETE);

-            builder = builder.addEvent(CONFIG_EXPORT);

-            builder = builder.addEvent(STOP_APPLICATION);

-

-            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,TEST,TESTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,START,STARTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,RESTART,RESTARTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,REBUILD,REBUILDING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,STOP,STOPPING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(NOT_ORCHESTRATED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,LOCK,NOT_ORCHESTRATED);

-            builder = builder.addTransition(NOT_ORCHESTRATED,UNLOCK,NOT_ORCHESTRATED);

-            builder = builder.addTransition(NOT_ORCHESTRATED,CHECKLOCK,NOT_ORCHESTRATED);

-            builder = builder.addTransition(NOT_ORCHESTRATED,START_APPLICATION,STARTING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,STOP_APPLICATION,STOPPING);

-            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_BACKUP,NOT_ORCHESTRATED);

-

-            builder = builder.addTransition(CREATED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(CREATED,TEST,TESTING);

-            builder = builder.addTransition(CREATED,START,STARTING);

-            builder = builder.addTransition(CREATED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(CREATED,RESTART,RESTARTING);

-            builder = builder.addTransition(CREATED,REBUILD,REBUILDING);

-            builder = builder.addTransition(CREATED,STOP,STOPPING);

-            builder = builder.addTransition(CREATED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(CREATED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(CREATED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(CREATED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(CREATED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(CREATED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(CREATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(CREATED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(CREATED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(CREATED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(CREATED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(CREATED,LOCK,CREATED);

-            builder = builder.addTransition(CREATED,UNLOCK,CREATED);

-            builder = builder.addTransition(CREATED,CHECKLOCK,CREATED);

-            builder = builder.addTransition(CREATED,START_APPLICATION,STARTING);

-            builder = builder.addTransition(CREATED,STOP_APPLICATION,STOPPING);

-            builder = builder.addTransition(CREATED,CONFIG_BACKUP,CREATED);

-

-            builder = builder.addTransition(INSTANTIATED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(INSTANTIATED,TEST,TESTING);

-            builder = builder.addTransition(INSTANTIATED,START,STARTING);

-            builder = builder.addTransition(INSTANTIATED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(INSTANTIATED,RESTART,RESTARTING);

-            builder = builder.addTransition(INSTANTIATED,REBUILD,REBUILDING);

-            builder = builder.addTransition(INSTANTIATED,STOP,STOPPING);

-            builder = builder.addTransition(INSTANTIATED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(INSTANTIATED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(INSTANTIATED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(INSTANTIATED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(INSTANTIATED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(INSTANTIATED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(INSTANTIATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(INSTANTIATED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(INSTANTIATED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(INSTANTIATED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(INSTANTIATED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(INSTANTIATED,LOCK,INSTANTIATED);

-            builder = builder.addTransition(INSTANTIATED,UNLOCK,INSTANTIATED);

-            builder = builder.addTransition(INSTANTIATED,CHECKLOCK,INSTANTIATED);

-

-            builder = builder.addTransition(CONFIGURED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(CONFIGURED,TEST,TESTING);

-            builder = builder.addTransition(CONFIGURED,START,STARTING);

-            builder = builder.addTransition(CONFIGURED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(CONFIGURED,RESTART,RESTARTING);

-            builder = builder.addTransition(CONFIGURED,REBUILD,REBUILDING);

-            builder = builder.addTransition(CONFIGURED,STOP,STOPPING);

-            builder = builder.addTransition(CONFIGURED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(CONFIGURED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(CONFIGURED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(CONFIGURED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(CONFIGURED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(CONFIGURED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(CONFIGURED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(CONFIGURED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(CONFIGURED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(CONFIGURED,SYNC,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,AUDIT,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(CONFIGURED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(CONFIGURED,LOCK,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,UNLOCK,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,CHECKLOCK,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,CONFIG_BACKUP,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,CONFIG_BACKUP_DELETE,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,CONFIG_EXPORT,CONFIGURED);

-            builder = builder.addTransition(CONFIGURED,STOP_APPLICATION,STOPPING);

-

-            builder = builder.addTransition(TESTED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(TESTED,TEST,TESTING);

-            builder = builder.addTransition(TESTED,START,STARTING);

-            builder = builder.addTransition(TESTED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(TESTED,RESTART,RESTARTING);

-            builder = builder.addTransition(TESTED,REBUILD,REBUILDING);

-            builder = builder.addTransition(TESTED,STOP,STOPPING);

-            builder = builder.addTransition(TESTED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(TESTED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(TESTED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(TESTED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(TESTED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(TESTED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(TESTED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(TESTED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(TESTED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(TESTED,SYNC,TESTED);

-            builder = builder.addTransition(TESTED,AUDIT,TESTED);

-            builder = builder.addTransition(TESTED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(TESTED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(TESTED,LOCK,TESTED);

-            builder = builder.addTransition(TESTED,UNLOCK,TESTED);

-            builder = builder.addTransition(TESTED,CHECKLOCK,TESTED);

-            builder = builder.addTransition(TESTED,CONFIG_BACKUP,TESTED);

-            builder = builder.addTransition(TESTED,CONFIG_BACKUP_DELETE,TESTED);

-            builder = builder.addTransition(TESTED,CONFIG_EXPORT,TESTED);

-            builder = builder.addTransition(TESTED,STOP_APPLICATION,STOPPING);

-

-            builder = builder.addTransition(RUNNING,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(RUNNING,TEST,TESTING);

-            builder = builder.addTransition(RUNNING,START,STARTING);

-            builder = builder.addTransition(RUNNING,TERMINATE,TERMINATING);

-            builder = builder.addTransition(RUNNING,RESTART,RESTARTING);

-            builder = builder.addTransition(RUNNING,REBUILD,REBUILDING);

-            builder = builder.addTransition(RUNNING,STOP,STOPPING);

-            builder = builder.addTransition(RUNNING,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(RUNNING,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(RUNNING,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(RUNNING,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(RUNNING,BACKUP,BACKING_UP);

-            builder = builder.addTransition(RUNNING,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(RUNNING,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(RUNNING,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(RUNNING,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(RUNNING,SYNC,RUNNING);

-            builder = builder.addTransition(RUNNING,AUDIT,RUNNING);

-            builder = builder.addTransition(RUNNING,MIGRATE,MIGRATING);

-            builder = builder.addTransition(RUNNING,EVACUATE,EVACUATING);

-            builder = builder.addTransition(RUNNING,LOCK,RUNNING);

-            builder = builder.addTransition(RUNNING,UNLOCK,RUNNING);

-            builder = builder.addTransition(RUNNING,CHECKLOCK,RUNNING);

-            builder = builder.addTransition(RUNNING,CONFIG_BACKUP,RUNNING);

-            builder = builder.addTransition(RUNNING,CONFIG_BACKUP_DELETE,RUNNING);

-            builder = builder.addTransition(RUNNING,CONFIG_EXPORT,RUNNING);

-            builder = builder.addTransition(RUNNING,STOP_APPLICATION,STOPPING);

-

-            builder = builder.addTransition(ERROR,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(ERROR,TEST,TESTING);

-            builder = builder.addTransition(ERROR,START,STARTING);

-            builder = builder.addTransition(ERROR,TERMINATE,TERMINATING);

-            builder = builder.addTransition(ERROR,RESTART,RESTARTING);

-            builder = builder.addTransition(ERROR,REBUILD,REBUILDING);

-            builder = builder.addTransition(ERROR,STOP,STOPPING);

-            builder = builder.addTransition(ERROR,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(ERROR,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(ERROR,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(ERROR,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(ERROR,BACKUP,BACKING_UP);

-            builder = builder.addTransition(ERROR,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(ERROR,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(ERROR,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(ERROR,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(ERROR,SYNC,ERROR);

-            builder = builder.addTransition(ERROR,AUDIT,ERROR);

-            builder = builder.addTransition(ERROR,MIGRATE,MIGRATING);

-            builder = builder.addTransition(ERROR,EVACUATE,EVACUATING);

-            builder = builder.addTransition(ERROR,LOCK,ERROR);

-            builder = builder.addTransition(ERROR,UNLOCK,ERROR);

-            builder = builder.addTransition(ERROR,CHECKLOCK,ERROR);

-            builder = builder.addTransition(ERROR,CONFIG_BACKUP,ERROR);

-            builder = builder.addTransition(ERROR,CONFIG_BACKUP_DELETE,ERROR);

-            builder = builder.addTransition(ERROR,CONFIG_EXPORT,ERROR);

-            builder = builder.addTransition(ERROR,STOP_APPLICATION,STOPPING);

-

-            builder = builder.addTransition(UNKNOWN,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(UNKNOWN,TEST,TESTING);

-            builder = builder.addTransition(UNKNOWN,START,STARTING);

-            builder = builder.addTransition(UNKNOWN,TERMINATE,TERMINATING);

-            builder = builder.addTransition(UNKNOWN,RESTART,RESTARTING);

-            builder = builder.addTransition(UNKNOWN,REBUILD,REBUILDING);

-            builder = builder.addTransition(UNKNOWN,STOP,STOPPING);

-            builder = builder.addTransition(UNKNOWN,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(UNKNOWN,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(UNKNOWN,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(UNKNOWN,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(UNKNOWN,BACKUP,BACKING_UP);

-            builder = builder.addTransition(UNKNOWN,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(UNKNOWN,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(UNKNOWN,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(UNKNOWN,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(UNKNOWN,SYNC,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,AUDIT,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,MIGRATE,MIGRATING);

-            builder = builder.addTransition(UNKNOWN,EVACUATE,EVACUATING);

-            builder = builder.addTransition(UNKNOWN,LOCK,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,UNLOCK,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,CHECKLOCK,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,CONFIG_BACKUP,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,CONFIG_BACKUP_DELETE,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,CONFIG_EXPORT,UNKNOWN);

-            builder = builder.addTransition(UNKNOWN,STOP_APPLICATION,STOPPING);

-

-            builder = builder.addTransition(STOPPED,CONFIGURE,CONFIGURING);

-            builder = builder.addTransition(STOPPED,TEST,TESTING);

-            builder = builder.addTransition(STOPPED,START,STARTING);

-            builder = builder.addTransition(STOPPED,TERMINATE,TERMINATING);

-            builder = builder.addTransition(STOPPED,RESTART,RESTARTING);

-            builder = builder.addTransition(STOPPED,REBUILD,REBUILDING);

-            builder = builder.addTransition(STOPPED,CONFIG_MODIFY,CONFIGURING);

-            builder = builder.addTransition(STOPPED,CONFIG_SCALEOUT,CONFIGURING);

-            builder = builder.addTransition(STOPPED,CONFIG_RESTORE,CONFIGURING);

-            builder = builder.addTransition(STOPPED,HEALTHCHECK,TESTING);

-            builder = builder.addTransition(STOPPED,BACKUP,BACKING_UP);

-            builder = builder.addTransition(STOPPED,SNAPSHOT,SNAPSHOTTING);

-            builder = builder.addTransition(STOPPED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);

-            builder = builder.addTransition(STOPPED,LIVE_UPGRADE,UPGRADING);

-            builder = builder.addTransition(STOPPED,ROLLBACK,ROLLBACKING);

-            builder = builder.addTransition(STOPPED,MIGRATE,MIGRATING);

-            builder = builder.addTransition(STOPPED,EVACUATE,EVACUATING);

-            builder = builder.addTransition(STOPPED,LOCK,STOPPED);

-            builder = builder.addTransition(STOPPED,UNLOCK,STOPPED);

-            builder = builder.addTransition(STOPPED,CHECKLOCK,STOPPED);

-

-            builder = builder.addTransition(CONFIGURING,SUCCESS,CONFIGURED);

-            builder = builder.addTransition(CONFIGURING,FAILURE,ERROR);

-

-            builder = builder.addTransition(TESTING,SUCCESS,TESTED);

-            builder = builder.addTransition(TESTING,FAILURE,ERROR);

-

-            builder = builder.addTransition(RESTARTING,SUCCESS,RUNNING);

-            builder = builder.addTransition(RESTARTING,FAILURE,ERROR);

-

-            builder = builder.addTransition(STARTING,SUCCESS,RUNNING);

-            builder = builder.addTransition(STARTING,FAILURE,ERROR);

-

-            builder = builder.addTransition(TERMINATING,SUCCESS,NOT_INSTANTIATED);

-            builder = builder.addTransition(TERMINATING,FAILURE,ERROR);

-

-            builder = builder.addTransition(REBUILDING,SUCCESS,RUNNING);

-            builder = builder.addTransition(REBUILDING,FAILURE,ERROR);

-

-            builder = builder.addTransition(STOPPING,SUCCESS,STOPPED);

-            builder = builder.addTransition(STOPPING,FAILURE,ERROR);

-

-            builder = builder.addTransition(BACKING_UP,SUCCESS,RUNNING);

-            builder = builder.addTransition(BACKING_UP,FAILURE,ERROR);

-

-            builder = builder.addTransition(SNAPSHOTTING,SUCCESS,RUNNING);

-            builder = builder.addTransition(SNAPSHOTTING,FAILURE,ERROR);

-

-            builder = builder.addTransition(SOFTWARE_UPLOADING,SUCCESS,RUNNING);

-            builder = builder.addTransition(SOFTWARE_UPLOADING,FAILURE,ERROR);

-

-            builder = builder.addTransition(UPGRADING,SUCCESS,RUNNING);

-            builder = builder.addTransition(UPGRADING,FAILURE,ERROR);

-

-            builder = builder.addTransition(ROLLBACKING,SUCCESS,RUNNING);

-            builder = builder.addTransition(ROLLBACKING,FAILURE,ERROR);

-

-            builder = builder.addTransition(MIGRATING,SUCCESS,RUNNING);

-            builder = builder.addTransition(MIGRATING,FAILURE,ERROR);

-

-            builder = builder.addTransition(EVACUATING,SUCCESS,RUNNING);

-            builder = builder.addTransition(EVACUATING,FAILURE,ERROR);

-

-

-            builder = builder.addTransition(CONFIGURED,START_APPLICATION,STARTING);

-            builder = builder.addTransition(TESTED,START_APPLICATION,STARTING);

-            builder = builder.addTransition(ERROR,START_APPLICATION,STARTING);

-            builder = builder.addTransition(UNKNOWN,START_APPLICATION,STARTING);

-            builder = builder.addTransition(RUNNING,START_APPLICATION,STARTING);

-

-            return builder.build();

-

-        }

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl.readers;
+
+import org.openecomp.appc.statemachine.StateMetaDataReader;
+import org.openecomp.appc.lifecyclemanager.objects.VNFOperationOutcome;
+import org.openecomp.appc.statemachine.objects.Event;
+import org.openecomp.appc.statemachine.objects.State;
+import org.openecomp.appc.statemachine.objects.StateMachineMetadata;
+
+public class VnfMetaDataReader implements StateMetaDataReader {
+
+    public enum VNFOperation {
+
+        Configure, Test, HealthCheck, Start, Terminate, Restart, Rebuild, Stop, ConfigModify,
+        ConfigScaleOut,ConfigRestore,Backup, Snapshot,
+        SoftwareUpload, LiveUpgrade, Rollback, Sync, Audit, Test_lic, Migrate, Evacuate,
+        ConfigBackup, ConfigBackupDelete, ConfigExport,
+        Lock(true), Unlock(true), CheckLock(true), StartApplication,StopApplication;
+
+        private boolean builtIn;
+
+        VNFOperation(boolean builtIn) {
+            this.builtIn = builtIn;
+        }
+
+        VNFOperation() {
+            this(false);
+        }
+    }
+
+    private enum VNFStates {
+        Not_Instantiated, Instantiated, Configuring, Configured, Testing, Tested, Rebuilding, Restarting, Starting,
+        Error, Running, Unknown, Terminating, Stopping, Stopped,
+        Backing_Up, Snapshotting, Software_Uploading, Upgrading, Rollbacking, Licensing, Migrating, Evacuating,
+        NOT_ORCHESTRATED("NOT ORCHESTRATED"), Created;
+
+        String stateName;
+
+        VNFStates(String name) {
+            this.stateName = name;
+        }
+
+        VNFStates() {
+            this.stateName = name();
+        }
+
+        @Override
+        public String toString() {
+            return this.stateName;
+        }
+    }
+
+    public StateMachineMetadata readMetadata() {
+        {
+            State NOT_INSTANTIATED = new State(VNFStates.Not_Instantiated.toString());
+            State INSTANTIATED = new State(VNFStates.Instantiated.toString());
+            State CONFIGURING = new State(VNFStates.Configuring.toString());
+            State CONFIGURED = new State(VNFStates.Configured.toString());
+            State TESTING = new State(VNFStates.Testing.toString());
+            State TESTED = new State(VNFStates.Tested.toString());
+            State REBUILDING = new State(VNFStates.Rebuilding.toString());
+            State RESTARTING = new State(VNFStates.Restarting.toString());
+            State STARTING = new State(VNFStates.Starting.toString());
+            State ERROR = new State(VNFStates.Error.toString());
+            State RUNNING = new State(VNFStates.Running.toString());
+            State UNKNOWN = new State(VNFStates.Unknown.toString());
+            State TERMINATING = new State(VNFStates.Terminating.toString());
+            State STOPPING = new State(VNFStates.Stopping.toString());
+            State STOPPED = new State(VNFStates.Stopped.toString());
+            State NOT_ORCHESTRATED = new State(VNFStates.NOT_ORCHESTRATED.toString());
+
+            State BACKING_UP = new State(VNFStates.Backing_Up.toString());
+            State SNAPSHOTTING = new State(VNFStates.Snapshotting.toString());
+            State SOFTWARE_UPLOADING = new State(VNFStates.Software_Uploading.toString());
+            State UPGRADING = new State(VNFStates.Upgrading.toString());
+            State ROLLBACKING = new State(VNFStates.Rollbacking.toString());
+
+            State MIGRATING = new State(VNFStates.Migrating.toString());
+            State EVACUATING = new State(VNFStates.Evacuating.toString());
+            State CREATED= new State(VNFStates.Created.toString());
+
+            Event START_APPLICATION = new Event(VNFOperation.StartApplication.toString());
+            Event CONFIGURE = new Event(VNFOperation.Configure.toString());
+            Event HEALTHCHECK = new Event(VNFOperation.HealthCheck.toString());
+            Event TEST = new Event(VNFOperation.Test.toString());
+            Event START = new Event(VNFOperation.Start.toString());
+            Event TERMINATE = new Event(VNFOperation.Terminate.toString());
+            Event RESTART = new Event(VNFOperation.Restart.toString());
+            Event REBUILD = new Event(VNFOperation.Rebuild.toString());
+            Event STOP = new Event(VNFOperation.Stop.toString());
+            Event CONFIG_MODIFY = new Event(VNFOperation.ConfigModify.toString());
+            Event CONFIG_SCALEOUT = new Event(VNFOperation.ConfigScaleOut.toString());
+            Event CONFIG_RESTORE = new Event(VNFOperation.ConfigRestore.toString());
+            Event BACKUP = new Event(VNFOperation.Backup.toString());
+            Event SNAPSHOT = new Event(VNFOperation.Snapshot.toString());
+            Event SOFTWARE_UPLOAD = new Event(VNFOperation.SoftwareUpload.toString());
+            Event LIVE_UPGRADE = new Event(VNFOperation.LiveUpgrade.toString());
+            Event ROLLBACK = new Event(VNFOperation.Rollback.toString());
+            Event SYNC = new Event(VNFOperation.Sync.toString());
+            Event AUDIT = new Event(VNFOperation.Audit.toString());
+            Event MIGRATE = new Event(VNFOperation.Migrate.toString());
+            Event EVACUATE = new Event(VNFOperation.Evacuate.toString());
+            Event CONFIG_BACKUP = new Event(VNFOperation.ConfigBackup.toString());
+            Event CONFIG_BACKUP_DELETE = new Event(VNFOperation.ConfigBackupDelete.toString());
+            Event CONFIG_EXPORT = new Event(VNFOperation.ConfigExport.toString());
+            Event STOP_APPLICATION= new Event(VNFOperation.StopApplication.toString());
+
+            Event LOCK = new Event(VNFOperation.Lock.toString());
+            Event UNLOCK = new Event(VNFOperation.Unlock.toString());
+            Event CHECKLOCK = new Event(VNFOperation.CheckLock.toString());
+
+            Event SUCCESS = new Event(VNFOperationOutcome.SUCCESS.toString());
+            Event FAILURE = new Event(VNFOperationOutcome.FAILURE.toString());
+
+
+            StateMachineMetadata.StateMachineMetadataBuilder builder = new StateMachineMetadata.StateMachineMetadataBuilder();
+
+            builder = builder.addState(NOT_INSTANTIATED);
+            builder = builder.addState(INSTANTIATED);
+            builder = builder.addState(CONFIGURING);
+            builder = builder.addState(CONFIGURED);
+            builder = builder.addState(TESTING);
+            builder = builder.addState(TESTED);
+            builder = builder.addState(REBUILDING);
+            builder = builder.addState(RESTARTING);
+            builder = builder.addState(STARTING);
+            builder = builder.addState(ERROR);
+            builder = builder.addState(RUNNING);
+            builder = builder.addState(UNKNOWN);
+            builder = builder.addState(TERMINATING);
+            builder = builder.addState(STOPPING);
+            builder = builder.addState(STOPPED);
+
+            builder = builder.addState(BACKING_UP);
+            builder = builder.addState(SNAPSHOTTING);
+            builder = builder.addState(SOFTWARE_UPLOADING);
+            builder = builder.addState(UPGRADING);
+            builder = builder.addState(ROLLBACKING);
+            builder = builder.addState(MIGRATING);
+            builder = builder.addState(EVACUATING);
+            builder = builder.addState(NOT_ORCHESTRATED);
+            builder = builder.addState(CREATED);
+            builder = builder.addEvent(START_APPLICATION);
+            builder = builder.addEvent(CONFIGURE);
+            builder = builder.addEvent(TEST);
+            builder = builder.addEvent(START);
+            builder = builder.addEvent(TERMINATE);
+            builder = builder.addEvent(RESTART);
+            builder = builder.addEvent(REBUILD);
+            builder = builder.addEvent(SUCCESS);
+            builder = builder.addEvent(FAILURE);
+            builder = builder.addEvent(STOP);
+            builder = builder.addEvent(CONFIG_MODIFY);
+            builder = builder.addEvent(CONFIG_SCALEOUT);
+            builder = builder.addEvent(CONFIG_RESTORE);
+            builder = builder.addEvent(HEALTHCHECK);
+            builder = builder.addEvent(BACKUP);
+            builder = builder.addEvent(SNAPSHOT);
+            builder = builder.addEvent(SOFTWARE_UPLOAD);
+            builder = builder.addEvent(LIVE_UPGRADE);
+            builder = builder.addEvent(ROLLBACK);
+            builder = builder.addEvent(SYNC);
+            builder = builder.addEvent(AUDIT);
+            builder = builder.addEvent(MIGRATE);
+            builder = builder.addEvent(EVACUATE);
+            builder = builder.addEvent(LOCK);
+            builder = builder.addEvent(UNLOCK);
+            builder = builder.addEvent(CHECKLOCK);
+            builder = builder.addEvent(CONFIG_BACKUP);
+            builder = builder.addEvent(CONFIG_BACKUP_DELETE);
+            builder = builder.addEvent(CONFIG_EXPORT);
+            builder = builder.addEvent(STOP_APPLICATION);
+
+            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,TEST,TESTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,START,STARTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,RESTART,RESTARTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,REBUILD,REBUILDING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,STOP,STOPPING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(NOT_ORCHESTRATED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,LOCK,NOT_ORCHESTRATED);
+            builder = builder.addTransition(NOT_ORCHESTRATED,UNLOCK,NOT_ORCHESTRATED);
+            builder = builder.addTransition(NOT_ORCHESTRATED,CHECKLOCK,NOT_ORCHESTRATED);
+            builder = builder.addTransition(NOT_ORCHESTRATED,START_APPLICATION,STARTING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,STOP_APPLICATION,STOPPING);
+            builder = builder.addTransition(NOT_ORCHESTRATED,CONFIG_BACKUP,NOT_ORCHESTRATED);
+
+            builder = builder.addTransition(CREATED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(CREATED,TEST,TESTING);
+            builder = builder.addTransition(CREATED,START,STARTING);
+            builder = builder.addTransition(CREATED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(CREATED,RESTART,RESTARTING);
+            builder = builder.addTransition(CREATED,REBUILD,REBUILDING);
+            builder = builder.addTransition(CREATED,STOP,STOPPING);
+            builder = builder.addTransition(CREATED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(CREATED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(CREATED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(CREATED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(CREATED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(CREATED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(CREATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(CREATED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(CREATED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(CREATED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(CREATED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(CREATED,LOCK,CREATED);
+            builder = builder.addTransition(CREATED,UNLOCK,CREATED);
+            builder = builder.addTransition(CREATED,CHECKLOCK,CREATED);
+            builder = builder.addTransition(CREATED,START_APPLICATION,STARTING);
+            builder = builder.addTransition(CREATED,STOP_APPLICATION,STOPPING);
+            builder = builder.addTransition(CREATED,CONFIG_BACKUP,CREATED);
+
+            builder = builder.addTransition(INSTANTIATED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(INSTANTIATED,TEST,TESTING);
+            builder = builder.addTransition(INSTANTIATED,START,STARTING);
+            builder = builder.addTransition(INSTANTIATED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(INSTANTIATED,RESTART,RESTARTING);
+            builder = builder.addTransition(INSTANTIATED,REBUILD,REBUILDING);
+            builder = builder.addTransition(INSTANTIATED,STOP,STOPPING);
+            builder = builder.addTransition(INSTANTIATED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(INSTANTIATED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(INSTANTIATED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(INSTANTIATED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(INSTANTIATED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(INSTANTIATED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(INSTANTIATED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(INSTANTIATED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(INSTANTIATED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(INSTANTIATED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(INSTANTIATED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(INSTANTIATED,LOCK,INSTANTIATED);
+            builder = builder.addTransition(INSTANTIATED,UNLOCK,INSTANTIATED);
+            builder = builder.addTransition(INSTANTIATED,CHECKLOCK,INSTANTIATED);
+
+            builder = builder.addTransition(CONFIGURED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(CONFIGURED,TEST,TESTING);
+            builder = builder.addTransition(CONFIGURED,START,STARTING);
+            builder = builder.addTransition(CONFIGURED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(CONFIGURED,RESTART,RESTARTING);
+            builder = builder.addTransition(CONFIGURED,REBUILD,REBUILDING);
+            builder = builder.addTransition(CONFIGURED,STOP,STOPPING);
+            builder = builder.addTransition(CONFIGURED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(CONFIGURED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(CONFIGURED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(CONFIGURED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(CONFIGURED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(CONFIGURED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(CONFIGURED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(CONFIGURED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(CONFIGURED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(CONFIGURED,SYNC,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,AUDIT,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(CONFIGURED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(CONFIGURED,LOCK,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,UNLOCK,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,CHECKLOCK,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,CONFIG_BACKUP,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,CONFIG_BACKUP_DELETE,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,CONFIG_EXPORT,CONFIGURED);
+            builder = builder.addTransition(CONFIGURED,STOP_APPLICATION,STOPPING);
+
+            builder = builder.addTransition(TESTED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(TESTED,TEST,TESTING);
+            builder = builder.addTransition(TESTED,START,STARTING);
+            builder = builder.addTransition(TESTED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(TESTED,RESTART,RESTARTING);
+            builder = builder.addTransition(TESTED,REBUILD,REBUILDING);
+            builder = builder.addTransition(TESTED,STOP,STOPPING);
+            builder = builder.addTransition(TESTED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(TESTED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(TESTED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(TESTED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(TESTED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(TESTED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(TESTED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(TESTED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(TESTED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(TESTED,SYNC,TESTED);
+            builder = builder.addTransition(TESTED,AUDIT,TESTED);
+            builder = builder.addTransition(TESTED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(TESTED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(TESTED,LOCK,TESTED);
+            builder = builder.addTransition(TESTED,UNLOCK,TESTED);
+            builder = builder.addTransition(TESTED,CHECKLOCK,TESTED);
+            builder = builder.addTransition(TESTED,CONFIG_BACKUP,TESTED);
+            builder = builder.addTransition(TESTED,CONFIG_BACKUP_DELETE,TESTED);
+            builder = builder.addTransition(TESTED,CONFIG_EXPORT,TESTED);
+            builder = builder.addTransition(TESTED,STOP_APPLICATION,STOPPING);
+
+            builder = builder.addTransition(RUNNING,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(RUNNING,TEST,TESTING);
+            builder = builder.addTransition(RUNNING,START,STARTING);
+            builder = builder.addTransition(RUNNING,TERMINATE,TERMINATING);
+            builder = builder.addTransition(RUNNING,RESTART,RESTARTING);
+            builder = builder.addTransition(RUNNING,REBUILD,REBUILDING);
+            builder = builder.addTransition(RUNNING,STOP,STOPPING);
+            builder = builder.addTransition(RUNNING,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(RUNNING,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(RUNNING,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(RUNNING,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(RUNNING,BACKUP,BACKING_UP);
+            builder = builder.addTransition(RUNNING,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(RUNNING,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(RUNNING,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(RUNNING,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(RUNNING,SYNC,RUNNING);
+            builder = builder.addTransition(RUNNING,AUDIT,RUNNING);
+            builder = builder.addTransition(RUNNING,MIGRATE,MIGRATING);
+            builder = builder.addTransition(RUNNING,EVACUATE,EVACUATING);
+            builder = builder.addTransition(RUNNING,LOCK,RUNNING);
+            builder = builder.addTransition(RUNNING,UNLOCK,RUNNING);
+            builder = builder.addTransition(RUNNING,CHECKLOCK,RUNNING);
+            builder = builder.addTransition(RUNNING,CONFIG_BACKUP,RUNNING);
+            builder = builder.addTransition(RUNNING,CONFIG_BACKUP_DELETE,RUNNING);
+            builder = builder.addTransition(RUNNING,CONFIG_EXPORT,RUNNING);
+            builder = builder.addTransition(RUNNING,STOP_APPLICATION,STOPPING);
+
+            builder = builder.addTransition(ERROR,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(ERROR,TEST,TESTING);
+            builder = builder.addTransition(ERROR,START,STARTING);
+            builder = builder.addTransition(ERROR,TERMINATE,TERMINATING);
+            builder = builder.addTransition(ERROR,RESTART,RESTARTING);
+            builder = builder.addTransition(ERROR,REBUILD,REBUILDING);
+            builder = builder.addTransition(ERROR,STOP,STOPPING);
+            builder = builder.addTransition(ERROR,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(ERROR,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(ERROR,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(ERROR,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(ERROR,BACKUP,BACKING_UP);
+            builder = builder.addTransition(ERROR,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(ERROR,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(ERROR,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(ERROR,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(ERROR,SYNC,ERROR);
+            builder = builder.addTransition(ERROR,AUDIT,ERROR);
+            builder = builder.addTransition(ERROR,MIGRATE,MIGRATING);
+            builder = builder.addTransition(ERROR,EVACUATE,EVACUATING);
+            builder = builder.addTransition(ERROR,LOCK,ERROR);
+            builder = builder.addTransition(ERROR,UNLOCK,ERROR);
+            builder = builder.addTransition(ERROR,CHECKLOCK,ERROR);
+            builder = builder.addTransition(ERROR,CONFIG_BACKUP,ERROR);
+            builder = builder.addTransition(ERROR,CONFIG_BACKUP_DELETE,ERROR);
+            builder = builder.addTransition(ERROR,CONFIG_EXPORT,ERROR);
+            builder = builder.addTransition(ERROR,STOP_APPLICATION,STOPPING);
+
+            builder = builder.addTransition(UNKNOWN,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(UNKNOWN,TEST,TESTING);
+            builder = builder.addTransition(UNKNOWN,START,STARTING);
+            builder = builder.addTransition(UNKNOWN,TERMINATE,TERMINATING);
+            builder = builder.addTransition(UNKNOWN,RESTART,RESTARTING);
+            builder = builder.addTransition(UNKNOWN,REBUILD,REBUILDING);
+            builder = builder.addTransition(UNKNOWN,STOP,STOPPING);
+            builder = builder.addTransition(UNKNOWN,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(UNKNOWN,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(UNKNOWN,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(UNKNOWN,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(UNKNOWN,BACKUP,BACKING_UP);
+            builder = builder.addTransition(UNKNOWN,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(UNKNOWN,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(UNKNOWN,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(UNKNOWN,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(UNKNOWN,SYNC,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,AUDIT,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,MIGRATE,MIGRATING);
+            builder = builder.addTransition(UNKNOWN,EVACUATE,EVACUATING);
+            builder = builder.addTransition(UNKNOWN,LOCK,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,UNLOCK,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,CHECKLOCK,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,CONFIG_BACKUP,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,CONFIG_BACKUP_DELETE,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,CONFIG_EXPORT,UNKNOWN);
+            builder = builder.addTransition(UNKNOWN,STOP_APPLICATION,STOPPING);
+
+            builder = builder.addTransition(STOPPED,CONFIGURE,CONFIGURING);
+            builder = builder.addTransition(STOPPED,TEST,TESTING);
+            builder = builder.addTransition(STOPPED,START,STARTING);
+            builder = builder.addTransition(STOPPED,TERMINATE,TERMINATING);
+            builder = builder.addTransition(STOPPED,RESTART,RESTARTING);
+            builder = builder.addTransition(STOPPED,REBUILD,REBUILDING);
+            builder = builder.addTransition(STOPPED,CONFIG_MODIFY,CONFIGURING);
+            builder = builder.addTransition(STOPPED,CONFIG_SCALEOUT,CONFIGURING);
+            builder = builder.addTransition(STOPPED,CONFIG_RESTORE,CONFIGURING);
+            builder = builder.addTransition(STOPPED,HEALTHCHECK,TESTING);
+            builder = builder.addTransition(STOPPED,BACKUP,BACKING_UP);
+            builder = builder.addTransition(STOPPED,SNAPSHOT,SNAPSHOTTING);
+            builder = builder.addTransition(STOPPED,SOFTWARE_UPLOAD,SOFTWARE_UPLOADING);
+            builder = builder.addTransition(STOPPED,LIVE_UPGRADE,UPGRADING);
+            builder = builder.addTransition(STOPPED,ROLLBACK,ROLLBACKING);
+            builder = builder.addTransition(STOPPED,MIGRATE,MIGRATING);
+            builder = builder.addTransition(STOPPED,EVACUATE,EVACUATING);
+            builder = builder.addTransition(STOPPED,LOCK,STOPPED);
+            builder = builder.addTransition(STOPPED,UNLOCK,STOPPED);
+            builder = builder.addTransition(STOPPED,CHECKLOCK,STOPPED);
+
+            builder = builder.addTransition(CONFIGURING,SUCCESS,CONFIGURED);
+            builder = builder.addTransition(CONFIGURING,FAILURE,ERROR);
+
+            builder = builder.addTransition(TESTING,SUCCESS,TESTED);
+            builder = builder.addTransition(TESTING,FAILURE,ERROR);
+
+            builder = builder.addTransition(RESTARTING,SUCCESS,RUNNING);
+            builder = builder.addTransition(RESTARTING,FAILURE,ERROR);
+
+            builder = builder.addTransition(STARTING,SUCCESS,RUNNING);
+            builder = builder.addTransition(STARTING,FAILURE,ERROR);
+
+            builder = builder.addTransition(TERMINATING,SUCCESS,NOT_INSTANTIATED);
+            builder = builder.addTransition(TERMINATING,FAILURE,ERROR);
+
+            builder = builder.addTransition(REBUILDING,SUCCESS,RUNNING);
+            builder = builder.addTransition(REBUILDING,FAILURE,ERROR);
+
+            builder = builder.addTransition(STOPPING,SUCCESS,STOPPED);
+            builder = builder.addTransition(STOPPING,FAILURE,ERROR);
+
+            builder = builder.addTransition(BACKING_UP,SUCCESS,RUNNING);
+            builder = builder.addTransition(BACKING_UP,FAILURE,ERROR);
+
+            builder = builder.addTransition(SNAPSHOTTING,SUCCESS,RUNNING);
+            builder = builder.addTransition(SNAPSHOTTING,FAILURE,ERROR);
+
+            builder = builder.addTransition(SOFTWARE_UPLOADING,SUCCESS,RUNNING);
+            builder = builder.addTransition(SOFTWARE_UPLOADING,FAILURE,ERROR);
+
+            builder = builder.addTransition(UPGRADING,SUCCESS,RUNNING);
+            builder = builder.addTransition(UPGRADING,FAILURE,ERROR);
+
+            builder = builder.addTransition(ROLLBACKING,SUCCESS,RUNNING);
+            builder = builder.addTransition(ROLLBACKING,FAILURE,ERROR);
+
+            builder = builder.addTransition(MIGRATING,SUCCESS,RUNNING);
+            builder = builder.addTransition(MIGRATING,FAILURE,ERROR);
+
+            builder = builder.addTransition(EVACUATING,SUCCESS,RUNNING);
+            builder = builder.addTransition(EVACUATING,FAILURE,ERROR);
+
+
+            builder = builder.addTransition(CONFIGURED,START_APPLICATION,STARTING);
+            builder = builder.addTransition(TESTED,START_APPLICATION,STARTING);
+            builder = builder.addTransition(ERROR,START_APPLICATION,STARTING);
+            builder = builder.addTransition(UNKNOWN,START_APPLICATION,STARTING);
+            builder = builder.addTransition(RUNNING,START_APPLICATION,STARTING);
+
+            return builder.build();
+
+        }
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Event.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Event.java
index 0808b1b..33de607 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Event.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Event.java
@@ -1,65 +1,65 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-public class Event{

-

-    private String eventName;

-

-    private Event(){

-        // do nothing

-    }

-

-    @Override

-    public int hashCode(){

-        return this.eventName.hashCode();

-    }

-

-    @Override

-    public boolean equals(Object obj){

-        if(obj == null){

-            return false;

-        }

-        if(!(obj instanceof Event)){

-            return false;

-        }

-        Event event = (Event)obj;

-        return this.eventName.equals(event.getEventName());

-    }

-

-    public Event(String eventName){

-        this();

-        this.eventName = eventName;

-    }

-

-    private String getEventName() {

-        return eventName;

-    }

-

-    @Override

-    public String toString(){

-        return this.eventName;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+public class Event{
+
+    private String eventName;
+
+    private Event(){
+        // do nothing
+    }
+
+    @Override
+    public int hashCode(){
+        return this.eventName.hashCode();
+    }
+
+    @Override
+    public boolean equals(Object obj){
+        if(obj == null){
+            return false;
+        }
+        if(!(obj instanceof Event)){
+            return false;
+        }
+        Event event = (Event)obj;
+        return this.eventName.equals(event.getEventName());
+    }
+
+    public Event(String eventName){
+        this();
+        this.eventName = eventName;
+    }
+
+    private String getEventName() {
+        return eventName;
+    }
+
+    @Override
+    public String toString(){
+        return this.eventName;
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Response.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Response.java
index 622a427..3620120 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Response.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Response.java
@@ -1,32 +1,32 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-public enum Response {

-    NO_TRANSITION_DEFINED,NO_STATE_CHANGE,VALID_TRANSITION;

-    public String toString(){

-        return this.name();

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+public enum Response {
+    NO_TRANSITION_DEFINED,NO_STATE_CHANGE,VALID_TRANSITION;
+    public String toString(){
+        return this.name();
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/State.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/State.java
index 99d6a0a..8dc8c3c 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/State.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/State.java
@@ -1,77 +1,77 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-import java.util.ArrayList;

-import java.util.List;

-

-public class State{

-    private String stateName;

-    private List<Transition> transitions;

-

-    private State(){

-        // do nothing

-    }

-

-    public State(String state){

-        this();

-        this.stateName = state;

-        this.transitions = new ArrayList<>();

-    }

-

-    @Override

-    public int hashCode(){

-        return this.stateName.hashCode();

-    }

-

-    @Override

-    public boolean equals(Object obj){

-        if(obj == null){

-            return false;

-        }

-        if(!(obj instanceof State)){

-            return false;

-        }

-        State state = (State)obj;

-        return this.stateName.equalsIgnoreCase(state.getStateName());

-    }

-

-    public String getStateName(){

-        return stateName;

-    }

-

-    void addTransition(Transition transition){

-        this.transitions.add(transition);

-    }

-

-    public List<Transition> getTransitions() {

-        return transitions;

-    }

-

-    @Override

-    public String toString(){

-        return this.stateName;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class State{
+    private String stateName;
+    private List<Transition> transitions;
+
+    private State(){
+        // do nothing
+    }
+
+    public State(String state){
+        this();
+        this.stateName = state;
+        this.transitions = new ArrayList<>();
+    }
+
+    @Override
+    public int hashCode(){
+        return this.stateName.hashCode();
+    }
+
+    @Override
+    public boolean equals(Object obj){
+        if(obj == null){
+            return false;
+        }
+        if(!(obj instanceof State)){
+            return false;
+        }
+        State state = (State)obj;
+        return this.stateName.equalsIgnoreCase(state.getStateName());
+    }
+
+    public String getStateName(){
+        return stateName;
+    }
+
+    void addTransition(Transition transition){
+        this.transitions.add(transition);
+    }
+
+    public List<Transition> getTransitions() {
+        return transitions;
+    }
+
+    @Override
+    public String toString(){
+        return this.stateName;
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineMetadata.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineMetadata.java
index 5a8984c..e985c76 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineMetadata.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineMetadata.java
@@ -1,78 +1,78 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-import java.util.HashSet;

-import java.util.Set;

-

-public class StateMachineMetadata {

-

-    private Set<State> states;

-    private Set<Event> events;

-

-    private StateMachineMetadata(StateMachineMetadataBuilder builder){

-        states = builder.states;

-        events = builder.events;

-    }

-

-    public Set<State> getStates() {

-        return states;

-    }

-

-    public Set<Event> getEvents() {

-        return events;

-    }

-

-    public static class StateMachineMetadataBuilder{

-

-        private Set<State> states;

-        private Set<Event> events;

-

-        public StateMachineMetadataBuilder(){

-            states = new HashSet<>();

-            events = new HashSet<>();

-        }

-

-        public StateMachineMetadataBuilder addState(State state){

-            this.states.add(state);

-            return this;

-        }

-

-        public StateMachineMetadataBuilder addEvent(Event event){

-            this.events.add(event);

-            return this;

-        }

-

-        public StateMachineMetadataBuilder addTransition(State currentState,Event event,State nextState){

-            Transition transition = new Transition(event,nextState);

-            currentState.addTransition(transition);

-            return this;

-        }

-

-        public StateMachineMetadata build(){

-            return new StateMachineMetadata(this);

-        }

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+import java.util.HashSet;
+import java.util.Set;
+
+public class StateMachineMetadata {
+
+    private Set<State> states;
+    private Set<Event> events;
+
+    private StateMachineMetadata(StateMachineMetadataBuilder builder){
+        states = builder.states;
+        events = builder.events;
+    }
+
+    public Set<State> getStates() {
+        return states;
+    }
+
+    public Set<Event> getEvents() {
+        return events;
+    }
+
+    public static class StateMachineMetadataBuilder{
+
+        private Set<State> states;
+        private Set<Event> events;
+
+        public StateMachineMetadataBuilder(){
+            states = new HashSet<>();
+            events = new HashSet<>();
+        }
+
+        public StateMachineMetadataBuilder addState(State state){
+            this.states.add(state);
+            return this;
+        }
+
+        public StateMachineMetadataBuilder addEvent(Event event){
+            this.events.add(event);
+            return this;
+        }
+
+        public StateMachineMetadataBuilder addTransition(State currentState,Event event,State nextState){
+            Transition transition = new Transition(event,nextState);
+            currentState.addTransition(transition);
+            return this;
+        }
+
+        public StateMachineMetadata build(){
+            return new StateMachineMetadata(this);
+        }
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineResponse.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineResponse.java
index 7f78087..0b1c8e2 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineResponse.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/StateMachineResponse.java
@@ -1,51 +1,51 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-

-public class StateMachineResponse {

-    private State nextState;

-    private Response response;

-

-    public StateMachineResponse(){

-        // do nothing

-    }

-

-    public State getNextState() {

-        return nextState;

-    }

-

-    public Response getResponse() {

-        return response;

-    }

-

-    public void setNextState(State nextState) {

-        this.nextState = nextState;

-    }

-

-    public void setResponse(Response response) {

-        this.response = response;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+
+public class StateMachineResponse {
+    private State nextState;
+    private Response response;
+
+    public StateMachineResponse(){
+        // do nothing
+    }
+
+    public State getNextState() {
+        return nextState;
+    }
+
+    public Response getResponse() {
+        return response;
+    }
+
+    public void setNextState(State nextState) {
+        this.nextState = nextState;
+    }
+
+    public void setResponse(Response response) {
+        this.response = response;
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Transition.java b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Transition.java
index b050268..d777ef8 100644
--- a/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Transition.java
+++ b/appc-lifecycle-management/state-machine-lib/src/main/java/org/openecomp/appc/statemachine/objects/Transition.java
@@ -1,48 +1,48 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.objects;

-

-public class Transition {

-    private Event event;

-    private State nextState;

-

-    private Transition(){

-        // do nothing

-    }

-

-    Transition(Event event, State nextState){

-        this();

-        this.event = event;

-        this.nextState = nextState;

-    }

-

-    public Event getEvent() {

-        return event;

-    }

-

-    public State getNextState() {

-        return nextState;

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.objects;
+
+public class Transition {
+    private Event event;
+    private State nextState;
+
+    private Transition(){
+        // do nothing
+    }
+
+    Transition(Event event, State nextState){
+        this();
+        this.event = event;
+        this.nextState = nextState;
+    }
+
+    public Event getEvent() {
+        return event;
+    }
+
+    public State getNextState() {
+        return nextState;
+    }
+}
diff --git a/appc-lifecycle-management/state-machine-lib/src/test/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStatesTest.java b/appc-lifecycle-management/state-machine-lib/src/test/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStatesTest.java
index af08234..01afd14 100644
--- a/appc-lifecycle-management/state-machine-lib/src/test/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStatesTest.java
+++ b/appc-lifecycle-management/state-machine-lib/src/test/java/org/openecomp/appc/statemachine/impl/readers/AppcOamStatesTest.java
@@ -1,71 +1,71 @@
-/*-

+/*-
  * ============LICENSE_START=======================================================
  * ONAP : APPC
  * ================================================================================
  * 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

+ * 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
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0

+ *      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.

+ * 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=========================================================

- */

-

-package org.openecomp.appc.statemachine.impl.readers;

-

-import org.junit.Assert;

-import org.junit.Test;

-import org.osgi.framework.Bundle;

-

-import java.util.HashMap;

-import java.util.Map;

-

-public class AppcOamStatesTest {

-

-    @Test

-    public void testBasicFunctions() {

-        AppcOamStates aState = AppcOamStates.EnteringMaintenanceMode;

-        Assert.assertEquals("name() does not match", "EnteringMaintenanceMode", aState.name());

-        Assert.assertEquals("toString() does not match", "EnteringMaintenanceMode", aState.toString());

-        Assert.assertEquals("osgiBundleState does not match", 0, aState.osgiBundleState);

-    }

-

-    @Test

-    public void testGetOamStateFromBundleState() {

-        Map<Integer, AppcOamStates> resultMap = new HashMap<Integer, AppcOamStates>() {

-            {

-                put(Bundle.UNINSTALLED,     AppcOamStates.NotInstantiated);

-                put(Bundle.INSTALLED,       AppcOamStates.Instantiated);

-                put(Bundle.RESOLVED,        AppcOamStates.Stopped);

-                put(Bundle.STARTING,        AppcOamStates.Starting);

-                put(Bundle.STOPPING,        AppcOamStates.Stopping);

-                put(Bundle.ACTIVE,          AppcOamStates.Started);

-            }

-        };

-        for (Map.Entry<Integer, AppcOamStates> aEntry : resultMap.entrySet()) {

-            Integer bundleState = aEntry.getKey();

-            AppcOamStates oamState = aEntry.getValue();

-            Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with oamState(%s)",

-                    bundleState, oamState), oamState, AppcOamStates.getOamStateFromBundleState(bundleState));

-        }

-

-        int bundleState = Bundle.START_TRANSIENT;

-        Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with NotInstantiated state.",

-                bundleState), AppcOamStates.NotInstantiated, AppcOamStates.getOamStateFromBundleState(bundleState));

-

-        bundleState = Bundle.STOP_TRANSIENT;

-        Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with NotInstantiated state.",

-                bundleState), AppcOamStates.NotInstantiated, AppcOamStates.getOamStateFromBundleState(bundleState));

-    }

-}

+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.statemachine.impl.readers;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class AppcOamStatesTest {
+
+    @Test
+    public void testBasicFunctions() {
+        AppcOamStates aState = AppcOamStates.EnteringMaintenanceMode;
+        Assert.assertEquals("name() does not match", "EnteringMaintenanceMode", aState.name());
+        Assert.assertEquals("toString() does not match", "EnteringMaintenanceMode", aState.toString());
+        Assert.assertEquals("osgiBundleState does not match", 0, aState.osgiBundleState);
+    }
+
+    @Test
+    public void testGetOamStateFromBundleState() {
+        Map<Integer, AppcOamStates> resultMap = new HashMap<Integer, AppcOamStates>() {
+            {
+                put(Bundle.UNINSTALLED,     AppcOamStates.NotInstantiated);
+                put(Bundle.INSTALLED,       AppcOamStates.Instantiated);
+                put(Bundle.RESOLVED,        AppcOamStates.Stopped);
+                put(Bundle.STARTING,        AppcOamStates.Starting);
+                put(Bundle.STOPPING,        AppcOamStates.Stopping);
+                put(Bundle.ACTIVE,          AppcOamStates.Started);
+            }
+        };
+        for (Map.Entry<Integer, AppcOamStates> aEntry : resultMap.entrySet()) {
+            Integer bundleState = aEntry.getKey();
+            AppcOamStates oamState = aEntry.getValue();
+            Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with oamState(%s)",
+                    bundleState, oamState), oamState, AppcOamStates.getOamStateFromBundleState(bundleState));
+        }
+
+        int bundleState = Bundle.START_TRANSIENT;
+        Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with NotInstantiated state.",
+                bundleState), AppcOamStates.NotInstantiated, AppcOamStates.getOamStateFromBundleState(bundleState));
+
+        bundleState = Bundle.STOP_TRANSIENT;
+        Assert.assertEquals(String.format("OSGI bundle state(%d) shoule associate with NotInstantiated state.",
+                bundleState), AppcOamStates.NotInstantiated, AppcOamStates.getOamStateFromBundleState(bundleState));
+    }
+}