diff options
author | Yuli Shlosberg <ys9693@att.com> | 2018-03-07 16:29:57 +0200 |
---|---|---|
committer | Yuli Shlosberg <ys9693@att.com> | 2018-03-08 14:23:18 +0200 |
commit | e8d8a37da95c6fea435e0b3e93a477b5aa45b9b1 (patch) | |
tree | 415c9e5643f051e792ee414d887f8fe996a2b372 /sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer | |
parent | 2f2d71255620b40e6021a54fe514783ebc2d5260 (diff) |
update distribution-client package namesv1.3.02.0.0-ONAPbeijing2.0.0-ONAP
Change-Id: Ic6f81bc8fdd3b021033c7c68e44f876a6ee1d21a
Issue-ID: SDC-952
Signed-off-by: Yuli Shlosberg <ys9693@att.com>
Diffstat (limited to 'sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer')
7 files changed, 293 insertions, 0 deletions
diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IComponentDoneStatusMessage.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IComponentDoneStatusMessage.java new file mode 100644 index 0000000..e9b4359 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IComponentDoneStatusMessage.java @@ -0,0 +1,7 @@ +package org.onap.sdc.api.consumer; + +public interface IComponentDoneStatusMessage extends IDistributionStatusMessageBasic { + String getComponentName(); + default String getArtifactURL(){return "";} + +} diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IConfiguration.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IConfiguration.java new file mode 100644 index 0000000..c5a1857 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IConfiguration.java @@ -0,0 +1,157 @@ +/*- + * ============LICENSE_START======================================================= + * sdc-distribution-client + * ================================================================================ + * 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 + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.sdc.api.consumer; + +import java.util.List; +import org.onap.sdc.api.notification.INotificationData; + +public interface IConfiguration { + /** + * SDC Distribution Engine address. Value can be either hostname (with or + * without port), IP:port or FQDN (Fully Qualified Domain Name). * @return + * SDC Distribution Engine address. + */ + String getAsdcAddress(); + + /**SDC Distribution Addresses from ONAP Component + * Values need to be set from impl + */ + List<String> getMsgBusAddress(); + + /** + * User Name for SDC distribution consumer authentication. + * + * @return User Name. + */ + String getUser(); + + /** + * User Password for SDC distribution consumer authentication. + * + * @return User Password. + */ + String getPassword(); + + /** + * Distribution Client Polling Interval towards UEB in seconds. Can Be + * reconfigured in runtime. + * + * @return Distribution Client Polling Interval. + */ + int getPollingInterval(); + + /** + * Distribution Client Timeout in seconds waiting to UEB server response in + * each fetch interval. Can Be reconfigured in runtime. + * + * @return Distribution Client Timeout in seconds. + */ + int getPollingTimeout(); + + /** + * List of artifact types.<br> + * If the service contains any of the artifacts in the list, the callback + * will be activated. Can Be reconfigured in runtime. + * + * @return List of artifact types. + */ + List<String> getRelevantArtifactTypes(); + + /** + * Returns the consumer group defined for this ECOMP component, if no + * consumer group is defined return null. + * + * @return Consumer group. + */ + String getConsumerGroup(); + + /** + * Returns the environment name (testing, production etc...). Can Be + * reconfigured in runtime. + * + * @return + */ + String getEnvironmentName(); + + /** + * Unique ID of ECOMP component instance (e.x INSTAR name). + * + * @return + */ + String getConsumerID(); + + /** + * Return full path to Client's Key Store that contains either CA + * certificate or the ASDC's public key (e.g /etc/keystore/asdc-client.jks) + * file will be deployed with sdc-distribution jar. + * + * @return + */ + String getKeyStorePath(); + + /** + * @return Returns client's Key Store password + */ + String getKeyStorePassword(); + + /** + * Sets whether SDC server TLS authentication is activated. If set to false, + * Key Store path and password are not needed to be set. + * + * @return + */ + boolean activateServerTLSAuth(); + + /** + * If set to true the method {@link INotificationData#getResources()} will + * return all found resources.<br> + * That means that metadata of resources that do not contain relevant + * artifacts types (artifacts that are defined in + * {@link #getRelevantArtifactTypes()} will be returned.<br> + * Setting the method to false will activate the legacy behavior, in which + * empty resources are not part of the notification.<br> + * + * @return + */ + boolean isFilterInEmptyResources(); + + /** + * By default, Distribution Client will use HTTPS (TLS 1.2) when connecting + * to DMAAP. This param can be null, then default (HTTPS) behavior will be + * applied. If set to false, distribution client will use HTTP when + * connecting to DMAAP. + * + * @return + */ + Boolean isUseHttpsWithDmaap(); + + /** + * By default, (false value) Distribution Client will trigger the regular registration + * towards SDC (register component as consumer to the SDC-DISTR-NOTIF-TOPIC-[ENV] topic and register component as producer to the SDC-DISTR-STATUS-TOPIC-[ENV]).<br> + * If set to true, distribution client trigger Register to SDC indicating + * that this component request to be consumer and producer of the + * SDC-DISTR-STATUS-TOPIC-[ENV] topic.<br> + * @return + */ + default boolean isConsumeProduceStatusTopic() { + return false; + } +} diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessage.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessage.java new file mode 100644 index 0000000..fd73bac --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessage.java @@ -0,0 +1,28 @@ +/*- + * ============LICENSE_START======================================================= + * sdc-distribution-client + * ================================================================================ + * 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 + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.sdc.api.consumer; + +public interface IDistributionStatusMessage extends IDistributionStatusMessageBasic{ + + /**Resource URL of the downloaded/deployed artifact - URL specified in the distribution notification message*/ + String getArtifactURL(); + +} diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessageBasic.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessageBasic.java new file mode 100644 index 0000000..59dcc57 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IDistributionStatusMessageBasic.java @@ -0,0 +1,28 @@ +package org.onap.sdc.api.consumer; + +import org.onap.sdc.utils.DistributionStatusEnum; + +public interface IDistributionStatusMessageBasic { + /** + * Distribution ID published in the distribution notification.<br> + * Should be used to link the distribution status reports to the appropriate + * distribution activation.<br> + * Global Distribution Identifier: UUID generated by SDC per each + * distribution activation.<br> + * Generated UUID is compliant with RFC 4122. It is a 128-bit value + * formatted into blocks of hexadecimal digits separated by a hyphen ("-"). + * Ex.: AA97B177-9383-4934-8543-0F91A7A02836 + */ + String getDistributionID(); + + /**Unique ID of ONAP component instance (e.x INSTAR name)*/ + String getConsumerID(); + + /** + * Timestamp of the distribution status report creation.<br> + * The number of seconds that have elapsed since January 1, 1970. + */ + long getTimestamp(); + /**Download/Deployment status*/ + DistributionStatusEnum getStatus(); +} diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IFinalDistrStatusMessage.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IFinalDistrStatusMessage.java new file mode 100644 index 0000000..0869a67 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IFinalDistrStatusMessage.java @@ -0,0 +1,9 @@ +package org.onap.sdc.api.consumer; + + + +public interface IFinalDistrStatusMessage extends IDistributionStatusMessageBasic{ + + default String getConsumerID(){return "";} + default String getComponentName(){return "";} +} diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/INotificationCallback.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/INotificationCallback.java new file mode 100644 index 0000000..5121407 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/INotificationCallback.java @@ -0,0 +1,29 @@ +/*- + * ============LICENSE_START======================================================= + * sdc-distribution-client + * ================================================================================ + * 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 + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.sdc.api.consumer; + +import org.onap.sdc.api.notification.INotificationData; +/**When a relevant notification will be found activateCallback method will be activated with the notification data.<br> + * Please implement it according to your desired callback logic.*/ +public interface INotificationCallback { + void activateCallback(INotificationData data); +} + diff --git a/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IStatusCallback.java b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IStatusCallback.java new file mode 100644 index 0000000..5bcc4a2 --- /dev/null +++ b/sdc-distribution-client/src/main/java/org/onap/sdc/api/consumer/IStatusCallback.java @@ -0,0 +1,35 @@ +/*- + * ============LICENSE_START======================================================= + * sdc-distribution-client + * ================================================================================ + * 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 + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.sdc.api.consumer; + +import org.onap.sdc.api.notification.IStatusData; + +/** + * When a relevant status will be found activateCallback method will be + * activated with the status data.<br> + * Please implement it according to your desired callback logic. + */ +@FunctionalInterface +public interface IStatusCallback { + void activateCallback(IStatusData data); + + +} |