private void validateUploadRequest(UploadRequest uploadRequest) { Assert.notNull(uploadRequest.getRepoName(), "Repo name can not be null"); Assert.notNull(uploadRequest.getName(), "Name of package can not be null"); Assert.notNull(uploadRequest.getVersion(), "Version can not be null"); try { Version.valueOf(uploadRequest.getVersion().trim()); } catch (ParseException e) { throw new SkipperException("UploadRequest doesn't have a valid semantic version. Version = " + uploadRequest.getVersion().trim()); } Assert.notNull(uploadRequest.getExtension(), "Extension can not be null"); Assert.isTrue(uploadRequest.getExtension().equals("zip"), "Extension must be 'zip', not " + uploadRequest.getExtension()); Assert.notNull(uploadRequest.getPackageFileAsBytes(), "Package file as bytes must not be null"); Assert.isTrue(uploadRequest.getPackageFileAsBytes().length != 0, "Package file as bytes must not be empty"); PackageMetadata existingPackageMetadata = this.packageMetadataRepository.findByRepositoryNameAndNameAndVersion( uploadRequest.getRepoName().trim(), uploadRequest.getName().trim(), uploadRequest.getVersion().trim()); if (existingPackageMetadata != null) { throw new SkipperException(String.format("Failed to upload the package. " + "" + "Package [%s:%s] in Repository [%s] already exists.", uploadRequest.getName(), uploadRequest.getVersion(), uploadRequest.getRepoName().trim())); } }
private void validateUploadRequest(UploadRequest uploadRequest) { Assert.notNull(uploadRequest.getRepoName(), "Repo name can not be null"); Assert.notNull(uploadRequest.getName(), "Name of package can not be null"); Assert.notNull(uploadRequest.getVersion(), "Version can not be null"); try { Version.valueOf(uploadRequest.getVersion().trim()); } catch (ParseException e) { throw new SkipperException("UploadRequest doesn't have a valid semantic version. Version = " + uploadRequest.getVersion().trim()); } Assert.notNull(uploadRequest.getExtension(), "Extension can not be null"); Assert.isTrue(uploadRequest.getExtension().equals("zip"), "Extension must be 'zip', not " + uploadRequest.getExtension()); Assert.notNull(uploadRequest.getPackageFileAsBytes(), "Package file as bytes must not be null"); Assert.isTrue(uploadRequest.getPackageFileAsBytes().length != 0, "Package file as bytes must not be empty"); PackageMetadata existingPackageMetadata = this.packageMetadataRepository.findByRepositoryNameAndNameAndVersion( uploadRequest.getRepoName().trim(), uploadRequest.getName().trim(), uploadRequest.getVersion().trim()); if (existingPackageMetadata != null) { throw new SkipperException(String.format("Failed to upload the package. " + "" + "Package [%s:%s] in Repository [%s] already exists.", uploadRequest.getName(), uploadRequest.getVersion(), uploadRequest.getRepoName().trim())); } }
+ uploadRequest.getVersion() + "." + uploadRequest.getExtension()); Assert.isTrue(packageDir.exists(), "Package directory doesn't exist."); Files.write(packageFile, uploadRequest.getPackageFileAsBytes()); ZipUtil.unpack(packageFile.toFile(), packageDir); String unzippedPath = packageDir.getAbsolutePath() + File.separator + uploadRequest.getName() packageMetadata.setRepositoryName(localRepositoryToUpload.getName()); packageMetadata.setPackageFile(new PackageFile((uploadRequest.getPackageFileAsBytes()))); return this.packageMetadataRepository.save(packageMetadata);
+ uploadRequest.getVersion() + "." + uploadRequest.getExtension()); Assert.isTrue(packageDir.exists(), "Package directory doesn't exist."); Files.write(packageFile, uploadRequest.getPackageFileAsBytes()); ZipUtil.unpack(packageFile.toFile(), packageDir); String unzippedPath = packageDir.getAbsolutePath() + File.separator + uploadRequest.getName() packageMetadata.setRepositoryName(localRepositoryToUpload.getName()); packageMetadata.setPackageFile(new PackageFile((uploadRequest.getPackageFileAsBytes()))); return this.packageMetadataRepository.save(packageMetadata);