use of org.sonatype.nexus.repository.view.PartPayload in project nexus-repository-r by sonatype-nexus-community.
the class RUploadHandler method handle.
@Override
public UploadResponse handle(final Repository repository, final ComponentUpload upload) throws IOException {
final AssetUpload assetUpload = upload.getAssetUploads().get(0);
final PartPayload payload = assetUpload.getPayload();
final Map<String, String> fields = assetUpload.getFields();
final String uploadPath = removeInitialSlashFromPath(fields.get(PATH_ID));
final String assetPath = buildPath(uploadPath, payload.getName());
ensurePermitted(repository.getName(), RFormat.NAME, assetPath, Collections.emptyMap());
validateArchiveUploadPath(assetPath);
try {
UnitOfWork.begin(repository.facet(StorageFacet.class).txSupplier());
Asset asset = repository.facet(RHostedFacet.class).upload(assetPath, payload);
return new UploadResponse(asset);
} finally {
UnitOfWork.end();
}
}
Aggregations