summaryrefslogtreecommitdiffstats
path: root/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java')
-rw-r--r--openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java256
1 files changed, 106 insertions, 150 deletions
diff --git a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java
index 03ca76fd21..c4fed30e8e 100644
--- a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/MonitoringUploadsManagerImpl.java
@@ -13,9 +13,19 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.openecomp.sdc.vendorsoftwareproduct.impl;
+import static org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder.getErrorWithParameters;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.enrichment.types.MonitoringUploadType;
import org.openecomp.core.utilities.CommonMethods;
@@ -39,171 +49,117 @@ import org.openecomp.sdc.vendorsoftwareproduct.utils.VendorSoftwareProductUtils;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.errors.VersionableSubEntityNotFoundErrorBuilder;
-import java.io.IOException;
-import java.io.InputStream;
-import java.nio.ByteBuffer;
-import java.util.*;
-
-import static org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder.getErrorWithParameters;
-
public class MonitoringUploadsManagerImpl implements MonitoringUploadsManager {
- private final ComponentArtifactDao componentArtifactDao;
-
- MonitoringUploadsManagerImpl(ComponentArtifactDao componentArtifactDao) {
- this.componentArtifactDao = componentArtifactDao;
+ private final ComponentArtifactDao componentArtifactDao;
- componentArtifactDao.registerVersioning(
- VendorSoftwareProductConstants.VENDOR_SOFTWARE_PRODUCT_VERSIONABLE_TYPE);
- }
-
- @Override
- public void delete(String vspId, Version version, String componentId,
- MonitoringUploadType monitoringUploadType) {
- ComponentMonitoringUploadEntity componentMonitoringUploadEntity =
- setValuesForComponentArtifactEntityUpload(vspId, version, null, componentId, null,
- monitoringUploadType, null);
- Optional<ComponentMonitoringUploadEntity> retrieved = componentArtifactDao.getByType(
- componentMonitoringUploadEntity);
-
- if (!retrieved.isPresent()) {
- throw new CoreException(new VersionableSubEntityNotFoundErrorBuilder(
- componentMonitoringUploadEntity.getEntityType(),
- monitoringUploadType.name(),
- VspDetails.ENTITY_TYPE,
- componentMonitoringUploadEntity.getFirstClassCitizenId(),
- version).build());
+ MonitoringUploadsManagerImpl(ComponentArtifactDao componentArtifactDao) {
+ this.componentArtifactDao = componentArtifactDao;
+ componentArtifactDao.registerVersioning(VendorSoftwareProductConstants.VENDOR_SOFTWARE_PRODUCT_VERSIONABLE_TYPE);
}
- componentArtifactDao.delete(retrieved.get());
- }
-
- @Override
- public void upload(InputStream object, String filename, String vspId,
- Version version, String componentId,
- MonitoringUploadType type) {
- if (object == null) {
- throw new CoreException(new MonitoringUploadErrorBuilder(
- getErrorWithParameters(Messages.NO_FILE_WAS_UPLOADED_OR_FILE_NOT_EXIST.getErrorMessage(),
- "zip")).build());
- } else {
- Map<String, List<ErrorMessage>> errors = new HashMap<>();
- try {
- byte[] uploadedFileData = FileUtils.toByteArray(object);
- final FileContentHandler upload =
- validateZip(vspId, version, uploadedFileData, errors);
- if (type.equals(MonitoringUploadType.VES_EVENTS)) {
- validateVesEventUpload(upload, errors);
- }
- if (MapUtils.isNotEmpty(errors)) {
- throw new CoreException(
- new MonitoringUploadErrorBuilder(
- errors.values().iterator().next().get(0).getMessage())
- .build());
+ @Override
+ public void delete(String vspId, Version version, String componentId, MonitoringUploadType monitoringUploadType) {
+ ComponentMonitoringUploadEntity componentMonitoringUploadEntity = setValuesForComponentArtifactEntityUpload(vspId, version, null, componentId,
+ null, monitoringUploadType, null);
+ Optional<ComponentMonitoringUploadEntity> retrieved = componentArtifactDao.getByType(componentMonitoringUploadEntity);
+ if (!retrieved.isPresent()) {
+ throw new CoreException(
+ new VersionableSubEntityNotFoundErrorBuilder(componentMonitoringUploadEntity.getEntityType(), monitoringUploadType.name(),
+ VspDetails.ENTITY_TYPE, componentMonitoringUploadEntity.getFirstClassCitizenId(), version).build());
}
-
- createArtifactInDatabase(vspId, version, filename, componentId, type,
- uploadedFileData);
-
- } catch (Exception exception) {
- throw new CoreException(new MonitoringUploadErrorBuilder(exception.getMessage()).build());
- }
+ componentArtifactDao.delete(retrieved.get());
}
- }
- private void validateVesEventUpload(FileContentHandler upload,
- Map<String, List<ErrorMessage>> errors) {
- if (!CommonUtil.validateAllFilesYml(upload)) {
- ErrorMessage.ErrorMessageUtil.addMessage(SdcCommon.UPLOAD_FILE, errors)
- .add(new ErrorMessage(ErrorLevel.ERROR,
- Messages.VES_ZIP_SHOULD_CONTAIN_YML_ONLY.getErrorMessage()));
- throw new CoreException(
- new MonitoringUploadErrorBuilder(
- Messages.VES_ZIP_SHOULD_CONTAIN_YML_ONLY.getErrorMessage())
- .build());
+ @Override
+ public void upload(InputStream object, String filename, String vspId, Version version, String componentId, MonitoringUploadType type) {
+ if (object == null) {
+ throw new CoreException(
+ new MonitoringUploadErrorBuilder(getErrorWithParameters(Messages.NO_FILE_WAS_UPLOADED_OR_FILE_NOT_EXIST.getErrorMessage(), "zip"))
+ .build());
+ } else {
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ try {
+ byte[] uploadedFileData = FileUtils.toByteArray(object);
+ final FileContentHandler upload = validateZip(vspId, version, uploadedFileData, errors);
+ if (type.equals(MonitoringUploadType.VES_EVENTS)) {
+ validateVesEventUpload(upload, errors);
+ }
+ if (MapUtils.isNotEmpty(errors)) {
+ throw new CoreException(new MonitoringUploadErrorBuilder(errors.values().iterator().next().get(0).getMessage()).build());
+ }
+ createArtifactInDatabase(vspId, version, filename, componentId, type, uploadedFileData);
+ } catch (Exception exception) {
+ throw new CoreException(new MonitoringUploadErrorBuilder(exception.getMessage()).build());
+ }
+ }
}
- }
-
- private void createArtifactInDatabase(String vspId, Version version, String filename,
- String componentId,
- MonitoringUploadType type,
- byte[] uploadedFileData) {
- String artifactId = CommonMethods.nextUuId();
- ComponentMonitoringUploadEntity componentMonitoringUploadEntity =
- setValuesForComponentArtifactEntityUpload(vspId, version, filename, componentId,
- artifactId, type, uploadedFileData);
- componentArtifactDao.create(componentMonitoringUploadEntity);
- }
-
- @Override
- public MonitoringUploadStatus listFilenames(String vspId, Version version, String componentId) {
- ComponentMonitoringUploadEntity current =
- new ComponentMonitoringUploadEntity(vspId, version, componentId, null);
- return setMonitoringUploadStatusValues(current);
- }
-
- private MonitoringUploadStatus setMonitoringUploadStatusValues(
- ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
- MonitoringUploadStatus monitoringUploadStatus = new MonitoringUploadStatus();
-
- Collection<ComponentMonitoringUploadEntity> artifactNames =
- componentArtifactDao.list(componentMonitoringUploadEntity);
- Map<MonitoringUploadType, String> artifactTypeToFilename =
- VendorSoftwareProductUtils.mapArtifactsByType(artifactNames);
-
- if (MapUtils.isNotEmpty(artifactTypeToFilename)) {
- if (artifactTypeToFilename.containsKey(MonitoringUploadType.SNMP_TRAP)) {
- monitoringUploadStatus
- .setSnmpTrap(artifactTypeToFilename.get(MonitoringUploadType.SNMP_TRAP));
- }
- if (artifactTypeToFilename.containsKey(MonitoringUploadType.SNMP_POLL)) {
- monitoringUploadStatus
- .setSnmpPoll(artifactTypeToFilename.get(MonitoringUploadType.SNMP_POLL));
- }
- if (artifactTypeToFilename.containsKey(MonitoringUploadType.VES_EVENTS)) {
- monitoringUploadStatus
- .setVesEvent(artifactTypeToFilename.get(MonitoringUploadType.VES_EVENTS));
- }
+ private void validateVesEventUpload(FileContentHandler upload, Map<String, List<ErrorMessage>> errors) {
+ if (!CommonUtil.validateAllFilesYml(upload)) {
+ ErrorMessage.ErrorMessageUtil.addMessage(SdcCommon.UPLOAD_FILE, errors)
+ .add(new ErrorMessage(ErrorLevel.ERROR, Messages.VES_ZIP_SHOULD_CONTAIN_YML_ONLY.getErrorMessage()));
+ throw new CoreException(new MonitoringUploadErrorBuilder(Messages.VES_ZIP_SHOULD_CONTAIN_YML_ONLY.getErrorMessage()).build());
+ }
}
- return monitoringUploadStatus;
- }
-
- private ComponentMonitoringUploadEntity setValuesForComponentArtifactEntityUpload(
- String vspId, Version version, String filename, String componentId, String artifactId,
- MonitoringUploadType monitoringUploadType, byte[] uploadedFileData) {
-
- ComponentMonitoringUploadEntity
- entity = new ComponentMonitoringUploadEntity();
+ private void createArtifactInDatabase(String vspId, Version version, String filename, String componentId, MonitoringUploadType type,
+ byte[] uploadedFileData) {
+ String artifactId = CommonMethods.nextUuId();
+ ComponentMonitoringUploadEntity componentMonitoringUploadEntity = setValuesForComponentArtifactEntityUpload(vspId, version, filename,
+ componentId, artifactId, type, uploadedFileData);
+ componentArtifactDao.create(componentMonitoringUploadEntity);
+ }
- entity.setVspId(vspId);
- entity.setVersion(version);
- entity.setComponentId(componentId);
- entity.setId(artifactId);
- entity.setType(monitoringUploadType);
- entity.setArtifactName(filename);
+ @Override
+ public MonitoringUploadStatus listFilenames(String vspId, Version version, String componentId) {
+ ComponentMonitoringUploadEntity current = new ComponentMonitoringUploadEntity(vspId, version, componentId, null);
+ return setMonitoringUploadStatusValues(current);
+ }
- if (Objects.nonNull(uploadedFileData)) {
- entity.setArtifact(ByteBuffer.wrap(uploadedFileData));
+ private MonitoringUploadStatus setMonitoringUploadStatusValues(ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
+ MonitoringUploadStatus monitoringUploadStatus = new MonitoringUploadStatus();
+ Collection<ComponentMonitoringUploadEntity> artifactNames = componentArtifactDao.list(componentMonitoringUploadEntity);
+ Map<MonitoringUploadType, String> artifactTypeToFilename = VendorSoftwareProductUtils.mapArtifactsByType(artifactNames);
+ if (MapUtils.isNotEmpty(artifactTypeToFilename)) {
+ if (artifactTypeToFilename.containsKey(MonitoringUploadType.SNMP_TRAP)) {
+ monitoringUploadStatus.setSnmpTrap(artifactTypeToFilename.get(MonitoringUploadType.SNMP_TRAP));
+ }
+ if (artifactTypeToFilename.containsKey(MonitoringUploadType.SNMP_POLL)) {
+ monitoringUploadStatus.setSnmpPoll(artifactTypeToFilename.get(MonitoringUploadType.SNMP_POLL));
+ }
+ if (artifactTypeToFilename.containsKey(MonitoringUploadType.VES_EVENTS)) {
+ monitoringUploadStatus.setVesEvent(artifactTypeToFilename.get(MonitoringUploadType.VES_EVENTS));
+ }
+ }
+ return monitoringUploadStatus;
}
- return entity;
- }
+ private ComponentMonitoringUploadEntity setValuesForComponentArtifactEntityUpload(String vspId, Version version, String filename,
+ String componentId, String artifactId,
+ MonitoringUploadType monitoringUploadType,
+ byte[] uploadedFileData) {
+ ComponentMonitoringUploadEntity entity = new ComponentMonitoringUploadEntity();
+ entity.setVspId(vspId);
+ entity.setVersion(version);
+ entity.setComponentId(componentId);
+ entity.setId(artifactId);
+ entity.setType(monitoringUploadType);
+ entity.setArtifactName(filename);
+ if (Objects.nonNull(uploadedFileData)) {
+ entity.setArtifact(ByteBuffer.wrap(uploadedFileData));
+ }
+ return entity;
+ }
- private FileContentHandler validateZip(String vspId, Version version, byte[] uploadedFileData,
- Map<String, List<ErrorMessage>> errors) {
- FileContentHandler contentMap;
- try {
- contentMap =
- CommonUtil.validateAndUploadFileContent(OnboardingTypesEnum.ZIP, uploadedFileData);
- VendorSoftwareProductUtils.validateContentZipData(contentMap, errors);
- } catch (IOException exception) {
- throw new CoreException(
- new MonitoringUploadErrorBuilder(vspId, version,
- Messages.INVALID_ZIP_FILE.getErrorMessage())
- .build());
+ private FileContentHandler validateZip(String vspId, Version version, byte[] uploadedFileData, Map<String, List<ErrorMessage>> errors) {
+ FileContentHandler contentMap;
+ try {
+ contentMap = CommonUtil.validateAndUploadFileContent(OnboardingTypesEnum.ZIP, uploadedFileData);
+ VendorSoftwareProductUtils.validateContentZipData(contentMap, errors);
+ } catch (IOException exception) {
+ throw new CoreException(new MonitoringUploadErrorBuilder(vspId, version, Messages.INVALID_ZIP_FILE.getErrorMessage()).build());
+ }
+ return contentMap;
}
- return contentMap;
- }
}