Changeset 5536
- Timestamp:
- 08/07/14 15:04:10 (10 years ago)
- Location:
- VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/service/impl/ReferenceValidator.java
r5534 r5536 49 49 } 50 50 51 private final static ReferenceValidator validator = new ReferenceValidator(); 52 53 public static boolean validate(String value) { 51 public boolean validate(String value) { 54 52 final Validatable<String> validatable = new Validatable<>(value); 55 validat or.validate(validatable);53 validate(validatable); 56 54 return validatable.isValid(); 57 55 } -
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/service/impl/VirtualCollectionValidatorImpl.java
r5417 r5536 9 9 import eu.clarin.cmdi.virtualcollectionregistry.model.Resource; 10 10 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection; 11 import java.util.ArrayList; 11 12 import java.util.HashSet; 13 import java.util.List; 12 14 import java.util.Set; 13 15 import static org.springframework.beans.factory.config.ConfigurableBeanFactory.SCOPE_PROTOTYPE; … … 26 28 @Scope(value = SCOPE_PROTOTYPE) 27 29 public class VirtualCollectionValidatorImpl implements VirtualCollectionValidator { 30 28 31 private final Set<Creator> uniqueCreators = new HashSet<Creator>(16); 29 32 private final Set<String> uniqueResourceRefs = new HashSet<String>(512); … … 57 60 if (vc.getResources().isEmpty()) { 58 61 throw new VirtualCollectionRegistryUsageException( 59 "extensional collection must contain on or " +60 "more resources");62 "extensional collection must contain on or " 63 + "more resources"); 61 64 } 62 65 if (vc.getGeneratedBy() != null) { 63 66 throw new VirtualCollectionRegistryUsageException( 64 67 "extensional collection must not contain GeneratedBy"); 68 } 69 final List<String> invalidRefs = getInvalidReferences(vc); 70 if (!invalidRefs.isEmpty()) { 71 throw new VirtualCollectionRegistryUsageException( 72 String.format( 73 "one or more references are not valid: %s", 74 invalidRefs)); 65 75 } 66 76 break; … … 88 98 } 89 99 90 if ((vc.getReproducibilityNotice() != null) &&91 (vc.getReproducibility() == null)) {100 if ((vc.getReproducibilityNotice() != null) 101 && (vc.getReproducibility() == null)) { 92 102 throw new VirtualCollectionRegistryUsageException( 93 103 "reproducibility notice without reproducubility"); … … 115 125 } 116 126 127 private List<String> getInvalidReferences(VirtualCollection vc) { 128 final ReferenceValidator referenceValidator = new ReferenceValidator(); 129 final List<String> invalidRefs = new ArrayList<>(); 130 for (Resource resource : vc.getResources()) { 131 if (!referenceValidator.validate(resource.getRef())) { 132 invalidRefs.add(resource.getRef()); 133 } 134 } 135 return invalidRefs; 136 } 137 117 138 private void reset() { 118 139 uniqueCreators.clear();
Note: See TracChangeset
for help on using the changeset viewer.