aboutsummaryrefslogtreecommitdiffstats
path: root/sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java')
-rw-r--r--sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java41
1 files changed, 24 insertions, 17 deletions
diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java b/sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java
index 5640540..136d43e 100644
--- a/sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java
+++ b/sdc-distribution-client/src/main/java/org/onap/sdc/impl/DistributionClientImpl.java
@@ -3,6 +3,7 @@
* sdc-distribution-client
* ================================================================================
* Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Modifications copyright (C) 2020 Nokia. 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.
@@ -48,11 +49,13 @@ import org.onap.sdc.api.consumer.IStatusCallback;
import org.onap.sdc.api.notification.IArtifactInfo;
import org.onap.sdc.api.results.IDistributionClientDownloadResult;
import org.onap.sdc.api.results.IDistributionClientResult;
+import org.onap.sdc.http.HttpAsdcClient;
import org.onap.sdc.http.SdcConnectorClient;
import org.onap.sdc.http.TopicRegistrationResponse;
import org.onap.sdc.utils.DistributionActionResultEnum;
import org.onap.sdc.utils.DistributionClientConstants;
import org.onap.sdc.utils.GeneralUtils;
+import org.onap.sdc.utils.Pair;
import org.onap.sdc.utils.Wrapper;
import org.onap.sdc.api.notification.IVfModuleMetadata;
import org.slf4j.Logger;
@@ -83,7 +86,7 @@ public class DistributionClientImpl implements IDistributionClient {
public static final int TERMINATION_TIMEOUT = 60;
private static Logger log = LoggerFactory.getLogger(DistributionClientImpl.class.getName());
- protected SdcConnectorClient asdcConnector = new SdcConnectorClient();
+ private SdcConnectorClient asdcConnector;
private ScheduledExecutorService executorPool = null;
protected CambriaIdentityManager cambriaIdentityManager = null;
private List<String> brokerServers;
@@ -135,7 +138,9 @@ public class DistributionClientImpl implements IDistributionClient {
isConsumerGroupGenerated = false;
needToUpdateCambriaConsumer = true;
} else if (!isConsumerGroupGenerated) {
- generateConsumerGroup();
+ String generatedConsumerGroup = UUID.randomUUID().toString();
+ configuration.setConsumerGroup(generatedConsumerGroup);
+ isConsumerGroupGenerated = true;
}
if (needToUpdateCambriaConsumer) {
@@ -249,7 +254,7 @@ public class DistributionClientImpl implements IDistributionClient {
IDistributionClientDownloadResult downloadResult = new DistributionClientDownloadResultImpl(result.getDistributionActionResult(), result.getDistributionMessageResult());
return downloadResult;
}
- return asdcConnector.dowloadArtifact(artifactInfo);
+ return asdcConnector.downloadArtifact(artifactInfo);
}
@Override
@@ -282,7 +287,8 @@ public class DistributionClientImpl implements IDistributionClient {
validateNotTerminated(errorWrapper);
}
if (errorWrapper.isEmpty()) {
- validateAndInitConfiguration(errorWrapper, conf);
+ this.configuration = validateAndInitConfiguration(errorWrapper, conf).getSecond();
+ this.asdcConnector = createAsdcConnector(this.configuration);
}
// 1. get ueb server list from configuration
if (errorWrapper.isEmpty()) {
@@ -313,6 +319,10 @@ public class DistributionClientImpl implements IDistributionClient {
return result;
}
+ SdcConnectorClient createAsdcConnector(Configuration configuration) {
+ return new SdcConnectorClient(configuration, new HttpAsdcClient(configuration));
+ }
+
private void registerForTopics(Wrapper<IDistributionClientResult> errorWrapper) {
Either<TopicRegistrationResponse, DistributionClientResultImpl> registerAsdcTopics = asdcConnector.registerAsdcTopics(credential);
if (registerAsdcTopics.isRight()) {
@@ -343,7 +353,6 @@ public class DistributionClientImpl implements IDistributionClient {
}
private void validateArtifactTypesWithAsdcServer(IConfiguration conf, Wrapper<IDistributionClientResult> errorWrapper) {
- asdcConnector.init(configuration);
Either<List<String>, IDistributionClientResult> eitherValidArtifactTypesList = asdcConnector.getValidArtifactTypesList();
if (eitherValidArtifactTypesList.isRight()) {
DistributionActionResultEnum errorType = eitherValidArtifactTypesList.right().value().getDistributionActionResult();
@@ -494,9 +503,9 @@ public class DistributionClientImpl implements IDistributionClient {
return start();
}
- protected DistributionActionResultEnum validateAndInitConfiguration(Wrapper<IDistributionClientResult> errorWrapper, IConfiguration conf) {
+ protected Pair<DistributionActionResultEnum, Configuration> validateAndInitConfiguration(Wrapper<IDistributionClientResult> errorWrapper, IConfiguration conf) {
DistributionActionResultEnum result = DistributionActionResultEnum.SUCCESS;
-
+ Configuration configuration = null;
if (conf == null) {
result = DistributionActionResultEnum.CONFIGURATION_IS_MISSING;
} else if (conf.getConsumerID() == null || conf.getConsumerID().isEmpty()) {
@@ -520,7 +529,7 @@ public class DistributionClientImpl implements IDistributionClient {
} else if (conf.isConsumeProduceStatusTopic() && Objects.isNull(statusCallback)) {
result = DistributionActionResultEnum.CONF_INVALID_CONSUME_PRODUCE_STATUS_TOPIC_FALG;
} else { // DistributionActionResultEnum.SUCCESS
- handleValidConf(conf);
+ configuration = createConfiguration(conf);
}
if (result != DistributionActionResultEnum.SUCCESS) {
@@ -530,11 +539,11 @@ public class DistributionClientImpl implements IDistributionClient {
log.error(initResult.toString());
errorWrapper.setInnerElement(initResult);
}
- return result;
+ return new Pair<>(result, configuration);
}
- private void handleValidConf(IConfiguration conf) {
- this.configuration = new Configuration(conf);
+ private Configuration createConfiguration(IConfiguration conf) {
+ Configuration configuration = new Configuration(conf);
if (!isPollingIntervalValid(conf.getPollingInterval())) {
configuration.setPollingInterval(DistributionClientConstants.MIN_POLLING_INTERVAL_SEC);
}
@@ -542,7 +551,9 @@ public class DistributionClientImpl implements IDistributionClient {
configuration.setPollingTimeout(DistributionClientConstants.POLLING_TIMEOUT_SEC);
}
if (conf.getConsumerGroup() == null) {
- generateConsumerGroup();
+ String generatedConsumerGroup = UUID.randomUUID().toString();
+ configuration.setConsumerGroup(generatedConsumerGroup);
+ isConsumerGroupGenerated = true;
}
//Default use HTTPS with SDC
@@ -554,12 +565,8 @@ public class DistributionClientImpl implements IDistributionClient {
if (conf.isUseHttpsWithDmaap() == null) {
configuration.setUseHttpsWithDmaap(true);
}
- }
- private void generateConsumerGroup() {
- String generatedConsumerGroup = UUID.randomUUID().toString();
- configuration.setConsumerGroup(generatedConsumerGroup);
- isConsumerGroupGenerated = true;
+ return configuration;
}
protected boolean isValidFqdn(String fqdn) {