Skip to content

Commit

Permalink
Fix metadata validation on delete
Browse files Browse the repository at this point in the history
  • Loading branch information
MarekSuchanek committed Jun 29, 2023
1 parent 6813b6d commit acfe3e5
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,7 @@ public ResponseEntity<Model> updateMetaData(
}

// 4. Store metadata
final Model metadata = metadataService.update(reqDto, uri, rd);
final Model metadata = metadataService.update(reqDto, uri, rd, true);

// 5. Invalidate search filters cache
searchFilterCache.clearCache();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,9 @@ public Model store(

@Override
public Model update(
Model metadata, IRI uri, ResourceDefinition resourceDefinition
Model metadata, IRI uri, ResourceDefinition resourceDefinition, boolean validate
) throws MetadataServiceException {
setThemeTaxonomies(metadata, uri, null);
return super.update(metadata, uri, resourceDefinition);
return super.update(metadata, uri, resourceDefinition, validate);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -141,10 +141,12 @@ public Model store(
or hasRole('ADMIN')
""")
public Model update(
Model metadata, IRI uri, ResourceDefinition resourceDefinition
Model metadata, IRI uri, ResourceDefinition resourceDefinition, boolean validate
) throws MetadataServiceException {
try {
metadataValidator.validate(metadata, uri, resourceDefinition);
if (validate) {
metadataValidator.validate(metadata, uri, resourceDefinition);
}
final Model oldMetadata = retrieve(uri);
metadataEnhancer.enhance(metadata, uri, resourceDefinition, oldMetadata);
metadataRepository.remove(uri);
Expand Down Expand Up @@ -185,7 +187,7 @@ public void delete(IRI uri, ResourceDefinition rd) throws MetadataServiceExcepti
for (ResourceDefinitionChild rdChild : rdParent.getChildren()) {
if (rdChild.getResourceDefinitionUuid().equals(rd.getUuid())) {
parentMetadata.remove(null, i(rdChild.getRelationUri()), uri);
update(parentMetadata, parentUri, rdParent);
update(parentMetadata, parentUri, rdParent, false);
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Model store(
) throws MetadataServiceException;

Model update(
Model model, IRI uri, ResourceDefinition resourceDefinition
Model model, IRI uri, ResourceDefinition resourceDefinition, boolean validate
) throws MetadataServiceException;

void delete(IRI uri, ResourceDefinition resourceDefinition) throws MetadataServiceException;
Expand Down

0 comments on commit acfe3e5

Please sign in to comment.