2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2019 AT&T Intellectual Property. All rights
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END============================================
20 * ===================================================================
24 package org.onap.clamp.loop.components.external;
26 import com.google.gson.annotations.Expose;
28 import org.apache.camel.Exchange;
31 * Should be abstract but Gson can't instantiate it if it's an abstract.
33 public class ExternalComponent {
35 private ExternalComponentState componentState;
37 public void setState(ExternalComponentState newState) {
38 this.componentState = newState;
41 public ExternalComponentState getState() {
42 return this.componentState;
45 public String getComponentName() {
49 public ExternalComponentState computeState(Exchange camelExchange) {
50 return new ExternalComponentState("INIT", "no desc", 0);
53 public ExternalComponent(ExternalComponentState initialState) {
54 setState(initialState);
57 public ExternalComponent() {