diff options
author | Joey Sullivan <joey.sullivan@amdocs.com> | 2017-08-11 19:07:16 +0000 |
---|---|---|
committer | Joey Sullivan <joey.sullivan@amdocs.com> | 2017-08-11 19:08:04 +0000 |
commit | 241068ba4d3adecfb0f044158ed0eee40c5cb56b (patch) | |
tree | 495d43585cd0792cde0c4ec851993ccfca9b26a5 /appc-lifecycle-management | |
parent | fe0e98940048cad839c629821da78b3fcf33b6d2 (diff) |
[APPC-44] revert license line ending changes
Issue-Id: APPC-44
Change-Id: Id9350fb7e19512ee380d6ca480d5ca9569fe3bd4
Signed-off-by: Joey Sullivan <joey.sullivan@amdocs.com>
Diffstat (limited to 'appc-lifecycle-management')
28 files changed, 1943 insertions, 1943 deletions
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 352bf4b8c..50fb7eec4 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 13b2173d6..4d73dc541 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 5d6690045..613daa4ad 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 f6670eb70..89616c268 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 8d92e352c..547ffc1a8 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 890218e92..b7acf98ed 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 77725db6c..cea242f1f 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 6b634cad7..99d728335 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 e58dcc901..299c32546 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 d3fe3eae7..0a89251d3 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 9700f77b7..635ee6707 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 4b7b6f3ec..df18e1889 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 e735845e5..4278b4d95 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 4a7e7a1a4..d3596c688 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 1c74861c3..bf08680f1 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 0ddbd2f90..6e60ee411 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 6c7951f84..c4b49b7a1 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 124cf36d1..9fc1233cd 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 e160e7f0e..3c1f0945d 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 2f000d9cd..a63f356e7 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 e3e72f6d1..8f2a69f84 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 0808b1b55..33de6077d 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 622a4274a..36201204f 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 99d6a0ac2..8dc8c3ccf 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 5a8984c73..e985c769a 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 7f78087fa..0b1c8e2c7 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 b050268eb..d777ef8a5 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 af0823423..01afd14e2 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)); + } +} |