From 1db590a6b07cfd0ab8c1718b0b760a25fe4dd60f Mon Sep 17 00:00:00 2001 From: Guangrong Fu Date: Tue, 29 Aug 2017 19:27:16 +0800 Subject: [PATCH] Initialize the App and Config Class Create DmaapDsaActiveApp.java Create DmaapDsaConfig.java Change-Id: Idbc3c1c8306e97ad0d4eb0941d498df591a1f3eb Issue-ID: HOLMES-29 Signed-off-by: Guangrong Fu --- .../onap/holmes/dsa/dmaap/DmaapDsaActiveApp.java | 54 +++++++++++++++++++++ .../org/onap/holmes/dsa/dmaap/DmaapDsaConfig.java | 55 ++++++++++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaActiveApp.java create mode 100644 dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaConfig.java diff --git a/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaActiveApp.java b/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaActiveApp.java new file mode 100644 index 0000000..50e7fc4 --- /dev/null +++ b/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaActiveApp.java @@ -0,0 +1,54 @@ +/* + * Copyright 2017 ZTE Corporation. + * + * 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. + */ + +package org.onap.holmes.dsa.dmaap; + +import io.dropwizard.setup.Environment; +import java.io.IOException; +import lombok.extern.slf4j.Slf4j; +import org.onap.holmes.common.api.entity.ServiceRegisterEntity; +import org.onap.holmes.common.config.MicroServiceConfig; +import org.onap.holmes.common.dropwizard.ioc.bundle.IOCApplication; +import org.onap.holmes.common.utils.MSBRegisterUtil; + +@Slf4j +public class DmaapDsaActiveApp extends IOCApplication { + public static void main(String[] args) throws Exception { + new DmaapDsaActiveApp().run(args); + } + + @Override + public void run(DmaapDsaConfig configuration, Environment environment) throws Exception { + super.run(configuration, environment); + + try { + new MSBRegisterUtil().register(initServiceEntity()); + } catch (IOException e) { + log.warn("Micro service registry httpclient close failure", e); + } + } + + private ServiceRegisterEntity initServiceEntity() { + ServiceRegisterEntity serviceRegisterEntity = new ServiceRegisterEntity(); + serviceRegisterEntity.setServiceName("holmes-dmaap-dsa"); + serviceRegisterEntity.setProtocol("REST"); + serviceRegisterEntity.setVersion("v1"); + serviceRegisterEntity.setUrl("/onapapi/holmes-dmaap-dsa/v1/"); + serviceRegisterEntity.setSingleNode(MicroServiceConfig.getServiceIp(), "9103", 0); + serviceRegisterEntity.setVisualRange("1|0"); + return serviceRegisterEntity; + } +} diff --git a/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaConfig.java b/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaConfig.java new file mode 100644 index 0000000..615bc04 --- /dev/null +++ b/dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaap/DmaapDsaConfig.java @@ -0,0 +1,55 @@ +/* + * Copyright 2017 ZTE Corporation. + * + * 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. + */ + +package org.onap.holmes.dsa.dmaap; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.dropwizard.Configuration; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; +import org.hibernate.validator.constraints.NotEmpty; +import org.onap.holmes.common.config.MQConfig; + +public class DmaapDsaConfig extends Configuration { + + @NotEmpty + private String defaultName = "ONAP Holmes DMaaP DSA"; + + @NotEmpty + private String apidescription = "Holmes data Source adapter API"; + + @JsonProperty + @NotNull + @Valid + private MQConfig mqConfig; + + + public MQConfig getMqConfig() { + return mqConfig; + } + + public void setMqConfig(MQConfig mqConfig) { + this.mqConfig = mqConfig; + } + + public String getApidescription() { + return apidescription; + } + + public void setApidescription(String apidescription) { + this.apidescription = apidescription; + } +} -- 2.16.6