Changeset 5543
- Timestamp:
- 08/08/14 12:02:07 (10 years ago)
- Location:
- VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main
- Files:
-
- 1 deleted
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/VirtualCollectionRegistry.java
r5507 r5543 10 10 import eu.clarin.cmdi.virtualcollectionregistry.query.ParsedQuery; 11 11 import eu.clarin.cmdi.virtualcollectionregistry.service.VirtualCollectionValidator; 12 import eu.clarin.cmdi.virtualcollectionregistry.service.VirtualCollectionValidatorFactory;13 12 import java.security.Principal; 14 13 import java.util.Date; … … 35 34 import org.springframework.beans.factory.InitializingBean; 36 35 import org.springframework.beans.factory.annotation.Autowired; 36 import org.springframework.beans.factory.annotation.Qualifier; 37 37 import org.springframework.stereotype.Service; 38 38 … … 47 47 private OAIProvider oaiProvider; 48 48 @Autowired 49 private VirtualCollectionValidatorFactory validatorFactory; 49 @Qualifier("creation") 50 private VirtualCollectionValidator validator; 50 51 @Autowired 51 52 private AdminUsersService adminUsersService; … … 112 113 logger.debug("creating virtual collection"); 113 114 114 VirtualCollectionValidator validator = validatorFactory.createValidator();115 115 validator.validate(vc); 116 116 try { … … 153 153 logger.debug("updating virtual collection (id={})", id); 154 154 155 VirtualCollectionValidator validator = validatorFactory.createValidator();156 155 validator.validate(vc); 157 156 -
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/service/impl/VirtualCollectionValidatorImpl.java
r5542 r5543 2 2 3 3 import eu.clarin.cmdi.virtualcollectionregistry.service.VirtualCollectionValidator; 4 import eu.clarin.cmdi.virtualcollectionregistry.VirtualCollectionRegistryException;5 4 import eu.clarin.cmdi.virtualcollectionregistry.VirtualCollectionRegistryUsageException; 6 5 import eu.clarin.cmdi.virtualcollectionregistry.model.Creator; … … 13 12 import java.util.List; 14 13 import java.util.Set; 15 import static org.springframework.beans.factory.config.ConfigurableBeanFactory.SCOPE_PROTOTYPE; 16 import org.springframework.beans.factory.config.ServiceLocatorFactoryBean; 17 import org.springframework.context.annotation.Scope; 14 import org.springframework.beans.factory.annotation.Qualifier; 18 15 import org.springframework.stereotype.Service; 19 16 20 17 /** 21 * A virtual collection validator. Scoped prototype, because it carries state. 22 * Use a factory (e.g. dynamically generated using 23 * {@link ServiceLocatorFactoryBean}) to get new instances within a singleton. 18 * A virtual collection validator. Reusable and thread safe. 24 19 * 25 20 * @author twagoo 26 21 */ 27 22 @Service 28 @ Scope(value = SCOPE_PROTOTYPE)23 @Qualifier("creation") 29 24 public class VirtualCollectionValidatorImpl implements VirtualCollectionValidator { 30 31 private final Set<Creator> uniqueCreators = new HashSet<Creator>(16);32 private final Set<String> uniqueResourceRefs = new HashSet<String>(512);33 25 34 26 @Override … … 39 31 } 40 32 41 // reset internal state42 reset();33 final Set<Creator> uniqueCreators = new HashSet<Creator>(16); 34 final Set<String> uniqueResourceRefs = new HashSet<String>(512); 43 35 44 36 // proceed to validate ... … … 136 128 } 137 129 138 private void reset() {139 uniqueCreators.clear();140 uniqueResourceRefs.clear();141 }142 143 130 } // class VirtualCollectionValidator -
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/webapp/WEB-INF/applicationContext.xml
r5416 r5543 24 24 <!--<property name="location" value="classpath:vcr-defaults.properties"/>--> 25 25 </bean> 26 27 <!--28 Will generate a factory for virtual collection validator, based on the29 prototype bean for the VirtualCollectionValidator implementation30 see http://docs.spring.io/spring/docs/4.0.5.RELEASE/javadoc-api/org/springframework/beans/factory/config/ServiceLocatorFactoryBean.html31 -->32 <bean id="validatorFactory"33 class="org.springframework.beans.factory.config.ServiceLocatorFactoryBean">34 <property name="serviceLocatorInterface" value="eu.clarin.cmdi.virtualcollectionregistry.service.VirtualCollectionValidatorFactory"/>35 </bean>36 26 37 27 </beans>
Note: See TracChangeset
for help on using the changeset viewer.