diff options
author | Steve Smokowski <ss835w@att.com> | 2017-02-20 21:51:40 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@openecomp.org> | 2017-02-20 21:51:40 +0000 |
commit | 94584fa7509d00fc6f2f9730f38d70ee89f4eae6 (patch) | |
tree | 4afc8de8ca9768ae3d217c286a24899dfc095d5b /ajsc-aai/src | |
parent | ca2c2ff16da13cafd33e442c107c225766fd612e (diff) | |
parent | e9c93760239e43db9b3ecd55d2d64ef9ef79d8dc (diff) |
Merge "Change the docker profile back"
Diffstat (limited to 'ajsc-aai/src')
3 files changed, 328 insertions, 328 deletions
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<message> 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<message> 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<String> 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<String> 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 |