diff options
Diffstat (limited to 'src/main/java/org/openecomp/sdc/api')
13 files changed, 696 insertions, 0 deletions
diff --git a/src/main/java/org/openecomp/sdc/api/IDistributionClient.java b/src/main/java/org/openecomp/sdc/api/IDistributionClient.java new file mode 100644 index 0000000..a620e49 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/IDistributionClient.java @@ -0,0 +1,137 @@ +/*- + * ============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.openecomp.sdc.api; + +import java.util.List; + +import org.openecomp.sdc.api.consumer.IConfiguration; +import org.openecomp.sdc.api.consumer.IDistributionStatusMessage; +import org.openecomp.sdc.api.consumer.INotificationCallback; +import org.openecomp.sdc.api.notification.IArtifactInfo; +import org.openecomp.sdc.api.notification.IVfModuleMetadata; +import org.openecomp.sdc.api.results.IDistributionClientDownloadResult; +import org.openecomp.sdc.api.results.IDistributionClientResult; + +public interface IDistributionClient { + + /** + * Update the configuration of the distribution client <br> + * Updatable configuration parameters are: pollingInterval, pollingTimeout, consumerGroup and relevantArtifactTypes + * + * @param newConf - contains updated configuration + * + * @return IDistributionClientResult + */ + IDistributionClientResult updateConfiguration(IConfiguration newConf); + + /** + * Retrieve the configuration of the distribution client <br> + * + * @return IConfiguration + */ + IConfiguration getConfiguration(); + + /** + * Start distribution client <br> + * - start polling notification topic <br> + * + * @return IDistributionClientResult + */ + IDistributionClientResult start(); + + /** + * Stop distribution client <br> + * - stop polling notification topic <br> + * - unregister topics (via ASDC) <br> + * - delete keys from UEB + * + * @return IDistributionClientResult + */ + IDistributionClientResult stop(); + + /** + * Downloads an artifact from ASDC Catalog <br> + * + * @param artifactInfo + * @return IDistributionClientDownloadResult + */ + IDistributionClientDownloadResult download(IArtifactInfo artifactInfo); + + /** + * Initialize the distribution client <br> + * - fetch the UEB server list from ASDC <br> + * - create keys in UEB <br> + * - register for topics (via ASDC) <br> + * - set the notification callback <br> + * + * Note: all configuration fields are mandatory. <br> + * Password must be in clear text and not encrypted <br> + * ECOMP-Component MUST store password as SHA-2 (256) hashed with dynamically generated salt value <br> + * + * @param conf + * @param callback + * @return IDistributionClientResult + */ + IDistributionClientResult init(IConfiguration conf, INotificationCallback callback); + + + /** + * Build and publish Distribution Download Status event to Distribution Status Topic + * + * @param statusMessage + * @return IDistributionClientResult + */ + IDistributionClientResult sendDownloadStatus(IDistributionStatusMessage statusMessage); + + /** + * Build and publish Distribution Download Status event to Distribution Status Topic With Error Reason. + * + * @param statusMessage + * @param errorReason + * @return IDistributionClientResult + */ + IDistributionClientResult sendDownloadStatus(IDistributionStatusMessage statusMessage, String errorReason); + + + /** + * Build and publish Distribution Deployment Status event to Distribution Status Topic + * + * @param statusMessage + * @return IDistributionClientResult + */ + IDistributionClientResult sendDeploymentStatus(IDistributionStatusMessage statusMessage); + + /** + * Build and publish Distribution Deployment Status event to Distribution Status Topic With Error Reason. + * + * @param statusMessage + * @param errorReason + * @return IDistributionClientResult + */ + IDistributionClientResult sendDeploymentStatus(IDistributionStatusMessage statusMessage, String errorReason); + + /**This method parses artifact of type VF_MODULES_METADATA payload data . + * @param artifactPayload + * @return IVfModuleMetadata list + */ + List<IVfModuleMetadata> decodeVfModuleArtifact(byte[] artifactPayload); + +} diff --git a/src/main/java/org/openecomp/sdc/api/IDistributionStatusMessageJsonBuilder.java b/src/main/java/org/openecomp/sdc/api/IDistributionStatusMessageJsonBuilder.java new file mode 100644 index 0000000..7c28271 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/IDistributionStatusMessageJsonBuilder.java @@ -0,0 +1,25 @@ +/*- + * ============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.openecomp.sdc.api; + +public interface IDistributionStatusMessageJsonBuilder { + String build(); +} diff --git a/src/main/java/org/openecomp/sdc/api/asdc/RegistrationRequest.java b/src/main/java/org/openecomp/sdc/api/asdc/RegistrationRequest.java new file mode 100644 index 0000000..f6ce949 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/asdc/RegistrationRequest.java @@ -0,0 +1,33 @@ +/*- + * ============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.openecomp.sdc.api.asdc; + +public class RegistrationRequest { + + String apiPublicKey; + String distrEnvName; + + public RegistrationRequest(String apiPublicKey, String distrEnvName) { + this.apiPublicKey = apiPublicKey; + this.distrEnvName = distrEnvName; + } + +} diff --git a/src/main/java/org/openecomp/sdc/api/asdc/ServerListResponse.java b/src/main/java/org/openecomp/sdc/api/asdc/ServerListResponse.java new file mode 100644 index 0000000..c131a95 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/asdc/ServerListResponse.java @@ -0,0 +1,36 @@ +/*- + * ============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.openecomp.sdc.api.asdc; + +import java.util.List; + +public class ServerListResponse { + + private List<String> uebServerList; + + public List<String> getUebServerList() { + return uebServerList; + } + + public void setUebServerList(List<String> uebServerList) { + this.uebServerList = uebServerList; + } +} diff --git a/src/main/java/org/openecomp/sdc/api/consumer/IConfiguration.java b/src/main/java/org/openecomp/sdc/api/consumer/IConfiguration.java new file mode 100644 index 0000000..67eebce --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/consumer/IConfiguration.java @@ -0,0 +1,65 @@ +/*- + * ============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.openecomp.sdc.api.consumer; + +import java.util.List; + +public interface IConfiguration { + /**ASDC Distribution Engine address. + * Value can be either hostname (with or without port), IP:port or FQDN (Fully Qualified Domain Name). */ + String getAsdcAddress(); + /** User Name for ASDC distribution consumer authentication. */ + String getUser(); + /** User Password for ASDC distribution consumer authentication. */ + String getPassword(); + /** Distribution Client Polling Interval towards UEB in seconds. + * Can Be reconfigured in runtime */ + int getPollingInterval(); + /** Distribution Client Timeout in seconds waiting to UEB server response in each fetch interval. + * Can Be reconfigured in runtime */ + 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 */ + List<String> getRelevantArtifactTypes(); + /** Returns the consumer group defined for this ECOMP component, if no consumer group is defined return null. */ + String getConsumerGroup(); + /** Returns the environment name (testing, production etc...) + * Can Be reconfigured in runtime */ + String getEnvironmentName(); + /**Unique ID of ECOMP component instance (e.x INSTAR name)*/ + 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 asdc-distribution jar */ + String getKeyStorePath(); + + /**return client's Key Store password */ + String getKeyStorePassword(); + + /** + * Sets whether ASDC server TLS authentication is activated. + * If set to false, Key Store path and password are not needed to be set. + * @return + */ + boolean activateServerTLSAuth(); +} + + diff --git a/src/main/java/org/openecomp/sdc/api/consumer/IDistributionStatusMessage.java b/src/main/java/org/openecomp/sdc/api/consumer/IDistributionStatusMessage.java new file mode 100644 index 0000000..86251d1 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/consumer/IDistributionStatusMessage.java @@ -0,0 +1,52 @@ +/*- + * ============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.openecomp.sdc.api.consumer; + +import org.openecomp.sdc.utils.DistributionStatusEnum; + +public interface IDistributionStatusMessage { + /** + * 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 ASDC 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 ECOMP 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(); + + /**Resource URL of the downloaded/deployed artifact - URL specified in the distribution notification message*/ + String getArtifactURL(); + + /**Download/Deployment status*/ + DistributionStatusEnum getStatus(); +} diff --git a/src/main/java/org/openecomp/sdc/api/consumer/INotificationCallback.java b/src/main/java/org/openecomp/sdc/api/consumer/INotificationCallback.java new file mode 100644 index 0000000..60666ed --- /dev/null +++ b/src/main/java/org/openecomp/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.openecomp.sdc.api.consumer; + +import org.openecomp.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/src/main/java/org/openecomp/sdc/api/notification/IArtifactInfo.java b/src/main/java/org/openecomp/sdc/api/notification/IArtifactInfo.java new file mode 100644 index 0000000..135fd45 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/notification/IArtifactInfo.java @@ -0,0 +1,84 @@ +/*- + * ============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.openecomp.sdc.api.notification; + +import java.util.List; + + +public interface IArtifactInfo { + + /**Artifact File name */ + String getArtifactName(); + + /**Artifact Type.<br> + Following are valid values : HEAT , DG_XML. <br> + List of values will be extended in post-1510 releases.*/ + String getArtifactType(); + + /**Relative artifact's URL. Should be used in REST GET API to download the artifact's payload.<br> + The full artifact URL will be in the following format :<br> + https://{serverBaseURL}/{resourcePath}<br> + serverBaseURL - Hostname ( ASDC LB FQDN) + optional port <br> + resourcePath - "artifactURL" <br> + Ex : https://asdc.att.com/v1/catalog/services/srv1/2.0/resources/aaa/1.0/artifacts/aaa.yml */ + String getArtifactURL(); + + /**Base-64 encoded MD5 checksum of the artifact's payload.<br> + Should be used for data integrity validation when an artifact's payload is downloaded.<br>*/ + String getArtifactChecksum(); + + /** + * Installation timeout in minutes.<br> + * Used by the Orchestrator to determine how much time to wait for a heat (or other deployment artifact)<br> + * This field is only relevant for artifacts of ArtifactTypeEnum HEAT, for other artifacts it will be null.<br> + * deployment process to finish.<br> + * + */ + Integer getArtifactTimeout(); + + /** + * Artifact description + */ + String getArtifactDescription(); + + /** + * Artifact Version + */ + String getArtifactVersion(); + + /** + * Artifact Unique ID + */ + String getArtifactUUID(); + + + /** + * Returns the artifact it is generated from (relevant for heat_env), or null if there is no such artifact. + */ + IArtifactInfo getGeneratedArtifact(); + + /** + * Returns the list of related artifacts (relevant for HEAT_NESTED or HEAT_ARTIFACT), or null if there is no such artifacts. + */ + List<IArtifactInfo> getRelatedArtifacts(); + + +} diff --git a/src/main/java/org/openecomp/sdc/api/notification/INotificationData.java b/src/main/java/org/openecomp/sdc/api/notification/INotificationData.java new file mode 100644 index 0000000..df314ea --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/notification/INotificationData.java @@ -0,0 +1,67 @@ +/*- + * ============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.openecomp.sdc.api.notification; + +import java.util.List; + + + + + +public interface INotificationData { + /** Global Distribution Identifier: UUID generated by ASDC per each distribution activation.<br> + * Generated UUID is compliant with RFC 4122.<br> + * It is a 128-bit value formatted into blocks of hexadecimal digits separated by a hyphen ("-").<br> + Ex.: AA97B177-9383-4934-8543-0F91A7A02836 */ + String getDistributionID(); + + /**Logical Service Name.*/ + String getServiceName(); + + /** Service Version.<br> + * Two dot (".") separated digit blocks.<br> + Ex. : "2.0"*/ + String getServiceVersion(); + + /**Global UUID generated by ASDC per each service version. Generated UUID is compliant with RFC 4122.<br> + It is a 128-bit value formatted into blocks of hexadecimal digits separated by a hyphen ("-").<br> + Ex. : AA97B177-9383-4934-8543-0F91A7A02836*/ + String getServiceUUID(); + + /** + * Service description + */ + String getServiceDescription(); + + /** List of the resource instances */ + List<IResourceInstance> getResources(); + + /** List of Artifacts On Service Level */ + List<IArtifactInfo> getServiceArtifacts(); + + /**This method allows getting details of the artifact by its uuid.*/ + IArtifactInfo getArtifactMetadataByUUID(String artifactUUID); + + /** + * Invariant UUID + */ + String getServiceInvariantUUID(); +} diff --git a/src/main/java/org/openecomp/sdc/api/notification/IResourceInstance.java b/src/main/java/org/openecomp/sdc/api/notification/IResourceInstance.java new file mode 100644 index 0000000..5a29d4b --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/notification/IResourceInstance.java @@ -0,0 +1,50 @@ +/*- + * ============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.openecomp.sdc.api.notification; + +import java.util.List; + +public interface IResourceInstance { + /**Logical Resource Instance Name. <br> + * Unique Identifier of the instance of the specific resource in the service context.**/ + String getResourceInstanceName(); + + /**resource name */ + String getResourceName(); + + /**resource version */ + String getResourceVersion(); + + /**Resource Type (For Example: VF (Virtual Function) - A subsystem in a service, it can include one or more VFCs. This is what NFV spec refers as VNF.)**/ + String getResourceType(); + + /**Global UUID of the resource that specific artifact belongs to.<br> + It is generated by ASDC per each resource version.<br> + Generated UUID is compliant with RFC 4122. It is a 128-bit value formatted into blocks of hexadecimal digits separated by a hyphen ("-"). <br> + Ex.: AA97B177-9383-4934-8543-0F91A7A02836*/ + String getResourceUUID(); + + /**List of resource instance deployment artifacts. **/ + List<IArtifactInfo> getArtifacts(); + + String getResourceInvariantUUID(); + +} diff --git a/src/main/java/org/openecomp/sdc/api/notification/IVfModuleMetadata.java b/src/main/java/org/openecomp/sdc/api/notification/IVfModuleMetadata.java new file mode 100644 index 0000000..a769d71 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/notification/IVfModuleMetadata.java @@ -0,0 +1,63 @@ +/*- + * ============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.openecomp.sdc.api.notification; + +import java.util.List; +/**VF Module in the resource (VF) context*/ +public interface IVfModuleMetadata { + /**Logical VF Module Name. Unique Identifier of VF Module in the resource (VF) context.<br> + Ex. : "PCRF-module-0" + */ + String getVfModuleModelName(); + + /**Invariant VF Module UUID generated on VF Module creation according to RFC 4122 <br> + It is generated on service creation and stays invariant even if service name /version are updated. + */ + String getVfModuleModelInvariantUUID(); + + /** + Resource Version . Ex. : "1" + */ + String getVfModuleModelVersion(); + + /**Global UUID of the VF Module.<br> + It is generated by ASDC per each new VF module version. Generated UUID is compliant with RFC 4122. It is a 128-bit value formatted into blocks of hexadecimal digits separated by a hyphen ("-").<br> + Ex.: AA97B177-9383-4934-8543-0F91A7A02836 + */ + String getVfModuleModelUUID(); + + + /** + * VF Module textual description. Can be empty. + */ + String getVfModuleModelDescription(); + + + /** + * Is this VF module is the base module of the VF. + * */ + boolean isBase(); + + /** + * Array of VF Module deployment artifacts UUID. + * */ + List<String> getArtifacts(); +} diff --git a/src/main/java/org/openecomp/sdc/api/results/IDistributionClientDownloadResult.java b/src/main/java/org/openecomp/sdc/api/results/IDistributionClientDownloadResult.java new file mode 100644 index 0000000..e101636 --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/results/IDistributionClientDownloadResult.java @@ -0,0 +1,27 @@ +/*- + * ============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.openecomp.sdc.api.results; + +/**Distribution Client Result For Download API*/ +public interface IDistributionClientDownloadResult extends IDistributionClientResult{ + byte[] getArtifactPayload(); + String getArtifactName(); +} diff --git a/src/main/java/org/openecomp/sdc/api/results/IDistributionClientResult.java b/src/main/java/org/openecomp/sdc/api/results/IDistributionClientResult.java new file mode 100644 index 0000000..b4086ac --- /dev/null +++ b/src/main/java/org/openecomp/sdc/api/results/IDistributionClientResult.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.openecomp.sdc.api.results; + +import org.openecomp.sdc.utils.DistributionActionResultEnum; +/**General Distribution Client Result*/ +public interface IDistributionClientResult { + DistributionActionResultEnum getDistributionActionResult(); + String getDistributionMessageResult(); +} |