From: Venkata Harish K Kajur Date: Mon, 20 Feb 2017 21:26:48 +0000 (+0000) Subject: Change the docker profile back X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=e9c93760239e43db9b3ecd55d2d64ef9ef79d8dc;p=aai%2Faai-service.git Change the docker profile back Change-Id: I774f9120a7d65d48d215c1bf3cec71281446c3b3 Signed-off-by: Venkata Harish K Kajur --- diff --git a/ajsc-aai/pom.xml b/ajsc-aai/pom.xml index ffd407f..07279a4 100644 --- a/ajsc-aai/pom.xml +++ b/ajsc-aai/pom.xml @@ -337,6 +337,70 @@ + + org.apache.maven.plugins + maven-resources-plugin + 2.7 + + + copy-docker-file + package + + copy-resources + + + ${dockerLocation} + true + + + ${basedir}/src/main/resources/docker + true + + **/* + + + + + + + copy-commonlibs-file + package + + copy-resources + + + ${dockerLocation}/commonLibs + true + + + ${basedir}/target/commonLibs + false + + *.jar + + + + + + + + + com.spotify + docker-maven-plugin + 0.4.11 + + true + + ${docker.push.registry}/openecomp/${project.artifactId} + ${dockerLocation} + docker-hub + + ${docker_imageversion} + latest + + true + + org.jvnet.jaxb2.maven2 maven-jaxb2-plugin @@ -553,77 +617,5 @@ - - docker - - docker:build - - - org.apache.maven.plugins - maven-resources-plugin - 2.7 - - - copy-docker-file - package - - copy-resources - - - ${dockerLocation} - true - - - ${basedir}/src/main/resources/docker - true - - **/* - - - - - - - copy-commonlibs-file - package - - copy-resources - - - ${dockerLocation}/commonLibs - true - - - ${basedir}/target/commonLibs - false - - *.jar - - - - - - - - - com.spotify - docker-maven-plugin - 0.4.11 - - true - - ${docker.push.registry}/ecomp/${project.artifactId} - ${dockerLocation} - docker-hub - - ${docker_imageversion} - latest - - true - - - - - diff --git a/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/AAIDmaapPublisher.java b/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/AAIDmaapPublisher.java index e14d2c4..5aa2ca1 100644 --- a/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/AAIDmaapPublisher.java +++ b/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/AAIDmaapPublisher.java @@ -1,54 +1,54 @@ -/*- +/*- * ============LICENSE_START======================================================= * org.openecomp.aai * ================================================================================ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. * ================================================================================ - * 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 + * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.aai.dmaap; - -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.json.JSONObject; - -import com.att.nsa.mr.client.MRBatchingPublisher; -import com.att.nsa.mr.client.MRClientFactory; -import com.att.nsa.mr.client.MRPublisher.message; - -public class AAIDmaapPublisher { - private String publisherPropertyFile; - - private MRBatchingPublisher pub = null; - - public AAIDmaapPublisher(String publisherPropertyFile) throws FileNotFoundException, IOException { - this.publisherPropertyFile = publisherPropertyFile; - this.pub = MRClientFactory.createBatchingPublisher(this.publisherPropertyFile); - - } - - public List publishAndClose(JSONObject payload) throws IOException, InterruptedException { - this.pub.send(payload.toString()); - return pub.close(60, TimeUnit.SECONDS); - } - - public MRBatchingPublisher getMRBatchingPublisher() { - return this.pub; - } - -} + * ============LICENSE_END========================================================= + */ + +package org.openecomp.aai.dmaap; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.List; +import java.util.concurrent.TimeUnit; + +import org.json.JSONObject; + +import com.att.nsa.mr.client.MRBatchingPublisher; +import com.att.nsa.mr.client.MRClientFactory; +import com.att.nsa.mr.client.MRPublisher.message; + +public class AAIDmaapPublisher { + private String publisherPropertyFile; + + private MRBatchingPublisher pub = null; + + public AAIDmaapPublisher(String publisherPropertyFile) throws FileNotFoundException, IOException { + this.publisherPropertyFile = publisherPropertyFile; + this.pub = MRClientFactory.createBatchingPublisher(this.publisherPropertyFile); + + } + + public List publishAndClose(JSONObject payload) throws IOException, InterruptedException { + this.pub.send(payload.toString()); + return pub.close(60, TimeUnit.SECONDS); + } + + public MRBatchingPublisher getMRBatchingPublisher() { + return this.pub; + } + +} diff --git a/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/aaiWorkload/consumer/AAIWorkloadConsumer.java b/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/aaiWorkload/consumer/AAIWorkloadConsumer.java index db1ddf1..71491fd 100644 --- a/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/aaiWorkload/consumer/AAIWorkloadConsumer.java +++ b/ajsc-aai/src/main/java/org/openecomp/aai/dmaap/aaiWorkload/consumer/AAIWorkloadConsumer.java @@ -1,207 +1,207 @@ -/*- +/*- * ============LICENSE_START======================================================= * org.openecomp.aai * ================================================================================ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. * ================================================================================ - * 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 + * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.aai.dmaap.aaiWorkload.consumer; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.net.UnknownHostException; -import java.util.UUID; -import java.util.logging.Level; - -import org.apache.commons.configuration.ConfigurationException; -import org.apache.commons.configuration.PropertiesConfiguration; -import org.openecomp.aai.logging.AAILogger; -import org.openecomp.aai.logging.ErrorLogHelper; -import org.openecomp.aai.logging.ErrorObject; -import org.openecomp.aai.logging.LogLine; -import org.openecomp.aai.util.AAIConfig; -import org.openecomp.aai.util.AAIConstants; - -import com.att.aft.dme2.api.DME2Exception; -import com.att.nsa.mr.client.MRClientFactory; -import com.att.nsa.mr.client.MRConsumer; - -public class AAIWorkloadConsumer { - - private static String fromAppId = "AAIWorkloadConsumerScheduledTask"; - private static String COMPONENT = "DMAAP-AAI-WORKLOAD"; - private AAILogger aaiLogger = new AAILogger(AAIWorkloadConsumer.class.getName()); - - private String preferredRouterFilePath; - private String aaiWorkloadConsumerPropertiesFile; - private String aaiWorkloadStatusPublisherPropertiesFile; - private String aaiWorkloadPublisherPropertiesFile; - private String dmaapPropertyHome = ""; - private String dmaapConusmerId = ""; - - private MRConsumer aaiWorkloadConsumer; - - public AAIWorkloadConsumer() throws Exception { - - LogLine logline = new LogLine(); - logline.init(COMPONENT, "N/A", fromAppId, "AAIWorkloadConsumer"); - aaiLogger.debug(logline, "Initalize the AAIWorkloadConsumer"); - - this.dmaapPropertyHome = AAIConstants.AAI_HOME_ETC_APP_PROPERTIES; - if (this.dmaapPropertyHome == null) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Property AAI_HOME_ETC_APP_PROPERTIES is not set. Stopping AAIWorkloadConsumer."); - aaiLogger.error(errorObject, logline, null); - throw new Exception("Property AAI_HOME_ETC_APP_PROPERTIES is not set. Stopping AAIWorkloadConsumer."); - } - - if (System.getProperty("lrmHost") != null && !System.getProperty("lrmHost").isEmpty()) { - this.dmaapConusmerId = System.getProperty("lrmHost"); - } else { - this.dmaapConusmerId = UUID.randomUUID().toString(); - } - - processPropertyFiles(); - - this.aaiWorkloadConsumer = MRClientFactory.createConsumer(this.aaiWorkloadConsumerPropertiesFile); - aaiLogger.debug(logline, "Initalization completed."); - - } - - private void processPropertyFiles() throws FileNotFoundException, UnknownHostException, ConfigurationException { - - LogLine logline = new LogLine(); - logline.init(COMPONENT, "N/A", fromAppId, "processPropertyFiles"); - - this.preferredRouterFilePath = this.dmaapPropertyHome + "preferredRoute.txt"; - this.aaiWorkloadConsumerPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadConsumer.properties"; - this.aaiWorkloadPublisherPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadPublisher.properties"; - this.aaiWorkloadStatusPublisherPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadStatusPublisher.properties"; - - aaiLogger.debug(logline, "Preferred router file path: " + this.preferredRouterFilePath); - aaiLogger.debug(logline, "AAI Workload Consumer Properties path: " + this.aaiWorkloadConsumerPropertiesFile); - aaiLogger.debug(logline, "AAI Workload Publisher Properties path: " + this.aaiWorkloadPublisherPropertiesFile); - aaiLogger.debug(logline, "AAI Workload StatusPublisher Properties path: " + this.aaiWorkloadStatusPublisherPropertiesFile); - - File fo = new File(this.preferredRouterFilePath); - if (!fo.exists()) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap Route file " + preferredRouterFilePath + " does not exist."); - aaiLogger.error(errorObject, logline, null); - throw new FileNotFoundException("Dmaap Route file " + preferredRouterFilePath + " does not exist"); - } - - fo = new File(this.aaiWorkloadConsumerPropertiesFile); - if (!fo.exists()) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap consumer property file " + aaiWorkloadConsumerPropertiesFile + " does not exist."); - aaiLogger.error(errorObject, logline, null); - throw new FileNotFoundException("Dmaap consumer property file " + aaiWorkloadConsumerPropertiesFile + " does not exist."); - } - - fo = new File(this.aaiWorkloadPublisherPropertiesFile); - if (!fo.exists()) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap publisher property file " + this.aaiWorkloadPublisherPropertiesFile + " does not exist."); - aaiLogger.error(errorObject, logline, null); - throw new FileNotFoundException("Dmaap publisher property file " + this.aaiWorkloadPublisherPropertiesFile + " does not exist."); - } - - fo = new File(this.aaiWorkloadStatusPublisherPropertiesFile); - if (!fo.exists()) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", - "Dmaap publisher property file " + this.aaiWorkloadStatusPublisherPropertiesFile + " does not exist"); - aaiLogger.error(errorObject, logline, null); - throw new FileNotFoundException("Dmaap publisher property file " + this.aaiWorkloadStatusPublisherPropertiesFile + " does not exist"); - } - - modifyProperties(); - - } - - private void modifyProperties() throws ConfigurationException { - - LogLine logline = new LogLine(); - logline.init(COMPONENT, "N/A", fromAppId, "modifyProperties"); - - PropertiesConfiguration config = new PropertiesConfiguration(this.aaiWorkloadConsumerPropertiesFile); - if (config.getProperty("id") == null || config.getProperty("id").equals("") || config.getProperty("id").equals("aaiConsumerId")) { - config.setProperty("id", this.dmaapConusmerId); - aaiLogger.debug(logline, "Updated " + this.aaiWorkloadConsumerPropertiesFile + " id property to this.dmaapConusmerId."); - } - config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); - config.save(); - aaiLogger.debug(logline, "Updated " + this.aaiWorkloadConsumerPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); - - config = new PropertiesConfiguration(this.aaiWorkloadPublisherPropertiesFile); - config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); - config.save(); - aaiLogger.debug(logline, "Updated " + this.aaiWorkloadPublisherPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); - - config = new PropertiesConfiguration(this.aaiWorkloadStatusPublisherPropertiesFile); - config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); - config.save(); - aaiLogger.debug(logline, "Updated " + this.aaiWorkloadStatusPublisherPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); - - } - - public void startProcessing() throws Exception { - - LogLine logline = new LogLine(); - logline.init(COMPONENT, "N/A", fromAppId, "startProcessing"); - - int fetchFailCounter = 0; - AAIWorkloadEventProcessor awep = null; -// com.att.aft.dme2.api.util.configuration.DME2LoggingConfig.getInstance().initializeDME2Logger().setLevel(Level.SEVERE); - while (AAIConfig.get("aai.dmaap.workload.enableEventProcessing").equals("true")) { - - try { - if (System.getProperty("org.openecomp.aai.serverStarted") != null && System.getProperty("org.openecomp.aai.serverStarted").equals("true")) { - Iterable eventMessages = aaiWorkloadConsumer.fetch(); - for (String eventMessage : eventMessages) { - String transId = UUID.randomUUID().toString(); - aaiLogger.debug(logline, "Processing new dmaap message from the aaiWorkload topic." + transId); - aaiLogger.debug(logline, "Processing new dmaap message from the aaiWorkload topic: " + eventMessage); - awep = new AAIWorkloadEventProcessor(this.aaiWorkloadPublisherPropertiesFile, this.aaiWorkloadStatusPublisherPropertiesFile, transId); - awep.process(eventMessage); - } - fetchFailCounter = 0; - } - } catch (DME2Exception e) { - if (e.getErrorCode().equals("AFT-DME2-0999")) { - // do nothing as this is the standard http timeout - } else { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to dmaap consumer client throwing dme2 error."); - aaiLogger.error(errorObject, logline, e); - this.aaiWorkloadConsumer.close(); - throw e; - } - } catch (IOException e) { - fetchFailCounter++; - if (fetchFailCounter > 10) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to fetch throwing io exception. More than 10 times."); - aaiLogger.error(errorObject, logline, e); - this.aaiWorkloadConsumer.close(); - throw e; - } - } catch (Exception e) { - ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to unknown exception."); - aaiLogger.error(errorObject, logline, e); - this.aaiWorkloadConsumer.close(); - throw e; - } - } - this.aaiWorkloadConsumer.close(); - } - -} + * ============LICENSE_END========================================================= + */ + +package org.openecomp.aai.dmaap.aaiWorkload.consumer; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.net.UnknownHostException; +import java.util.UUID; +import java.util.logging.Level; + +import org.apache.commons.configuration.ConfigurationException; +import org.apache.commons.configuration.PropertiesConfiguration; +import org.openecomp.aai.logging.AAILogger; +import org.openecomp.aai.logging.ErrorLogHelper; +import org.openecomp.aai.logging.ErrorObject; +import org.openecomp.aai.logging.LogLine; +import org.openecomp.aai.util.AAIConfig; +import org.openecomp.aai.util.AAIConstants; + +import com.att.aft.dme2.api.DME2Exception; +import com.att.nsa.mr.client.MRClientFactory; +import com.att.nsa.mr.client.MRConsumer; + +public class AAIWorkloadConsumer { + + private static String fromAppId = "AAIWorkloadConsumerScheduledTask"; + private static String COMPONENT = "DMAAP-AAI-WORKLOAD"; + private AAILogger aaiLogger = new AAILogger(AAIWorkloadConsumer.class.getName()); + + private String preferredRouterFilePath; + private String aaiWorkloadConsumerPropertiesFile; + private String aaiWorkloadStatusPublisherPropertiesFile; + private String aaiWorkloadPublisherPropertiesFile; + private String dmaapPropertyHome = ""; + private String dmaapConusmerId = ""; + + private MRConsumer aaiWorkloadConsumer; + + public AAIWorkloadConsumer() throws Exception { + + LogLine logline = new LogLine(); + logline.init(COMPONENT, "N/A", fromAppId, "AAIWorkloadConsumer"); + aaiLogger.debug(logline, "Initalize the AAIWorkloadConsumer"); + + this.dmaapPropertyHome = AAIConstants.AAI_HOME_ETC_APP_PROPERTIES; + if (this.dmaapPropertyHome == null) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Property AAI_HOME_ETC_APP_PROPERTIES is not set. Stopping AAIWorkloadConsumer."); + aaiLogger.error(errorObject, logline, null); + throw new Exception("Property AAI_HOME_ETC_APP_PROPERTIES is not set. Stopping AAIWorkloadConsumer."); + } + + if (System.getProperty("lrmHost") != null && !System.getProperty("lrmHost").isEmpty()) { + this.dmaapConusmerId = System.getProperty("lrmHost"); + } else { + this.dmaapConusmerId = UUID.randomUUID().toString(); + } + + processPropertyFiles(); + + this.aaiWorkloadConsumer = MRClientFactory.createConsumer(this.aaiWorkloadConsumerPropertiesFile); + aaiLogger.debug(logline, "Initalization completed."); + + } + + private void processPropertyFiles() throws FileNotFoundException, UnknownHostException, ConfigurationException { + + LogLine logline = new LogLine(); + logline.init(COMPONENT, "N/A", fromAppId, "processPropertyFiles"); + + this.preferredRouterFilePath = this.dmaapPropertyHome + "preferredRoute.txt"; + this.aaiWorkloadConsumerPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadConsumer.properties"; + this.aaiWorkloadPublisherPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadPublisher.properties"; + this.aaiWorkloadStatusPublisherPropertiesFile = this.dmaapPropertyHome + "aaiWorkloadStatusPublisher.properties"; + + aaiLogger.debug(logline, "Preferred router file path: " + this.preferredRouterFilePath); + aaiLogger.debug(logline, "AAI Workload Consumer Properties path: " + this.aaiWorkloadConsumerPropertiesFile); + aaiLogger.debug(logline, "AAI Workload Publisher Properties path: " + this.aaiWorkloadPublisherPropertiesFile); + aaiLogger.debug(logline, "AAI Workload StatusPublisher Properties path: " + this.aaiWorkloadStatusPublisherPropertiesFile); + + File fo = new File(this.preferredRouterFilePath); + if (!fo.exists()) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap Route file " + preferredRouterFilePath + " does not exist."); + aaiLogger.error(errorObject, logline, null); + throw new FileNotFoundException("Dmaap Route file " + preferredRouterFilePath + " does not exist"); + } + + fo = new File(this.aaiWorkloadConsumerPropertiesFile); + if (!fo.exists()) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap consumer property file " + aaiWorkloadConsumerPropertiesFile + " does not exist."); + aaiLogger.error(errorObject, logline, null); + throw new FileNotFoundException("Dmaap consumer property file " + aaiWorkloadConsumerPropertiesFile + " does not exist."); + } + + fo = new File(this.aaiWorkloadPublisherPropertiesFile); + if (!fo.exists()) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Dmaap publisher property file " + this.aaiWorkloadPublisherPropertiesFile + " does not exist."); + aaiLogger.error(errorObject, logline, null); + throw new FileNotFoundException("Dmaap publisher property file " + this.aaiWorkloadPublisherPropertiesFile + " does not exist."); + } + + fo = new File(this.aaiWorkloadStatusPublisherPropertiesFile); + if (!fo.exists()) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", + "Dmaap publisher property file " + this.aaiWorkloadStatusPublisherPropertiesFile + " does not exist"); + aaiLogger.error(errorObject, logline, null); + throw new FileNotFoundException("Dmaap publisher property file " + this.aaiWorkloadStatusPublisherPropertiesFile + " does not exist"); + } + + modifyProperties(); + + } + + private void modifyProperties() throws ConfigurationException { + + LogLine logline = new LogLine(); + logline.init(COMPONENT, "N/A", fromAppId, "modifyProperties"); + + PropertiesConfiguration config = new PropertiesConfiguration(this.aaiWorkloadConsumerPropertiesFile); + if (config.getProperty("id") == null || config.getProperty("id").equals("") || config.getProperty("id").equals("aaiConsumerId")) { + config.setProperty("id", this.dmaapConusmerId); + aaiLogger.debug(logline, "Updated " + this.aaiWorkloadConsumerPropertiesFile + " id property to this.dmaapConusmerId."); + } + config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); + config.save(); + aaiLogger.debug(logline, "Updated " + this.aaiWorkloadConsumerPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); + + config = new PropertiesConfiguration(this.aaiWorkloadPublisherPropertiesFile); + config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); + config.save(); + aaiLogger.debug(logline, "Updated " + this.aaiWorkloadPublisherPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); + + config = new PropertiesConfiguration(this.aaiWorkloadStatusPublisherPropertiesFile); + config.setProperty("DME2preferredRouterFilePath", this.preferredRouterFilePath); + config.save(); + aaiLogger.debug(logline, "Updated " + this.aaiWorkloadStatusPublisherPropertiesFile + " DME2preferredRouterFilePath property to " + this.preferredRouterFilePath); + + } + + public void startProcessing() throws Exception { + + LogLine logline = new LogLine(); + logline.init(COMPONENT, "N/A", fromAppId, "startProcessing"); + + int fetchFailCounter = 0; + AAIWorkloadEventProcessor awep = null; +// com.att.aft.dme2.api.util.configuration.DME2LoggingConfig.getInstance().initializeDME2Logger().setLevel(Level.SEVERE); + while (AAIConfig.get("aai.dmaap.workload.enableEventProcessing").equals("true")) { + + try { + if (System.getProperty("org.openecomp.aai.serverStarted") != null && System.getProperty("org.openecomp.aai.serverStarted").equals("true")) { + Iterable eventMessages = aaiWorkloadConsumer.fetch(); + for (String eventMessage : eventMessages) { + String transId = UUID.randomUUID().toString(); + aaiLogger.debug(logline, "Processing new dmaap message from the aaiWorkload topic." + transId); + aaiLogger.debug(logline, "Processing new dmaap message from the aaiWorkload topic: " + eventMessage); + awep = new AAIWorkloadEventProcessor(this.aaiWorkloadPublisherPropertiesFile, this.aaiWorkloadStatusPublisherPropertiesFile, transId); + awep.process(eventMessage); + } + fetchFailCounter = 0; + } + } catch (DME2Exception e) { + if (e.getErrorCode().equals("AFT-DME2-0999")) { + // do nothing as this is the standard http timeout + } else { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to dmaap consumer client throwing dme2 error."); + aaiLogger.error(errorObject, logline, e); + this.aaiWorkloadConsumer.close(); + throw e; + } + } catch (IOException e) { + fetchFailCounter++; + if (fetchFailCounter > 10) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to fetch throwing io exception. More than 10 times."); + aaiLogger.error(errorObject, logline, e); + this.aaiWorkloadConsumer.close(); + throw e; + } + } catch (Exception e) { + ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_4000", "Exiting due to unknown exception."); + aaiLogger.error(errorObject, logline, e); + this.aaiWorkloadConsumer.close(); + throw e; + } + } + this.aaiWorkloadConsumer.close(); + } + +} diff --git a/ajsc-aai/src/main/scripts/dataRestoreFromSnapshot.sh b/ajsc-aai/src/main/scripts/dataRestoreFromSnapshot.sh index 7b045ef..15b01dc 100644 --- a/ajsc-aai/src/main/scripts/dataRestoreFromSnapshot.sh +++ b/ajsc-aai/src/main/scripts/dataRestoreFromSnapshot.sh @@ -1,85 +1,85 @@ -#!/bin/ksh -# +#!/bin/ksh +# # ============LICENSE_START======================================================= # org.openecomp.aai # ================================================================================ # Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. # ================================================================================ -# 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 +# 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. -# ============LICENSE_END========================================================= -# -# This script uses the dataSnapshot and SchemaGenerator (via GenTester) java classes to restore -# data to a database by doing three things: -# 1) clear out whatever data and schema are currently in the db -# 2) rebuild the schema (using the SchemaGenerator) -# 3) reload data from the passed-in datafile (which must found in the dataSnapShots directory and -# contain an xml view of the db data). -# - -echo -echo `date` " Starting $0" - - -userid=$( id | cut -f2 -d"(" | cut -f1 -d")" ) -if [ "${userid}" != "aaiadmin" ]; then - echo "You must be aaiadmin to run $0. The id used $userid." - exit 1 -fi - - -if [ "$#" -ne 1 ]; then - echo "Illegal number of parameters" - echo "usage: $0 previous_snapshot_filename" - exit 1 -fi - -. /etc/profile.d/aai.sh - -for JAR in `ls $PROJECT_HOME/extJars/*.jar` -do - CLASSPATH=$CLASSPATH:$JAR -done - -for JAR in `ls $PROJECT_HOME/lib/*.jar` -do - CLASSPATH=$CLASSPATH:$JAR -done - -#### Step 1) clear out the database -$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ - org.openecomp.aai.dbgen.DataSnapshot CLEAR_ENTIRE_DATABASE $1 -if [ "$?" -ne "0" ]; then - echo "Problem clearing out database." - exit 1 -fi - -#### Step 2) rebuild the db-schema -$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ - org.openecomp.aai.dbgen.GenTester GEN_DB_WITH_NO_DEFAULT_CR -if [ "$?" -ne "0" ]; then - echo "Problem rebuilding the schema (SchemaGenerator)." - exit 1 -fi - -#### Step 3) reload the data from a snapshot file -$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ - org.openecomp.aai.dbgen.DataSnapshot RELOAD_DATA $1 -if [ "$?" -ne "0" ]; then - echo "Problem reloading data into the database." - exit 1 -fi - - - -echo `date` " Done $0" -exit 0 +# ============LICENSE_END========================================================= +# +# This script uses the dataSnapshot and SchemaGenerator (via GenTester) java classes to restore +# data to a database by doing three things: +# 1) clear out whatever data and schema are currently in the db +# 2) rebuild the schema (using the SchemaGenerator) +# 3) reload data from the passed-in datafile (which must found in the dataSnapShots directory and +# contain an xml view of the db data). +# + +echo +echo `date` " Starting $0" + + +userid=$( id | cut -f2 -d"(" | cut -f1 -d")" ) +if [ "${userid}" != "aaiadmin" ]; then + echo "You must be aaiadmin to run $0. The id used $userid." + exit 1 +fi + + +if [ "$#" -ne 1 ]; then + echo "Illegal number of parameters" + echo "usage: $0 previous_snapshot_filename" + exit 1 +fi + +. /etc/profile.d/aai.sh + +for JAR in `ls $PROJECT_HOME/extJars/*.jar` +do + CLASSPATH=$CLASSPATH:$JAR +done + +for JAR in `ls $PROJECT_HOME/lib/*.jar` +do + CLASSPATH=$CLASSPATH:$JAR +done + +#### Step 1) clear out the database +$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ + org.openecomp.aai.dbgen.DataSnapshot CLEAR_ENTIRE_DATABASE $1 +if [ "$?" -ne "0" ]; then + echo "Problem clearing out database." + exit 1 +fi + +#### Step 2) rebuild the db-schema +$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ + org.openecomp.aai.dbgen.GenTester GEN_DB_WITH_NO_DEFAULT_CR +if [ "$?" -ne "0" ]; then + echo "Problem rebuilding the schema (SchemaGenerator)." + exit 1 +fi + +#### Step 3) reload the data from a snapshot file +$JAVA_HOME/bin/java -classpath $CLASSPATH -Dhttps.protocols=TLSv1.1,TLSv1.2 -DAJSC_HOME=$PROJECT_HOME -Daai.home=$PROJECT_HOME \ + org.openecomp.aai.dbgen.DataSnapshot RELOAD_DATA $1 +if [ "$?" -ne "0" ]; then + echo "Problem reloading data into the database." + exit 1 +fi + + + +echo `date` " Done $0" +exit 0