/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.rdf.factory; import org.apache.log4j.Logger; import org.dspace.rdf.conversion.RDFConverter; import org.dspace.rdf.storage.RDFStorage; import org.dspace.rdf.storage.URIGenerator; import org.springframework.beans.factory.annotation.Required; /** * * @author Pascal-Nicolas Becker (p dot becker at tu hyphen berlin dot de) */ public class RDFFactoryImpl extends RDFFactory { // we have several URIGenerators that use each other as fallback // following we have to instantiate all of them and cannot use autowiring // by type here. So we use setters and properties in Spring configuration // instead. private static final Logger log = Logger.getLogger(RDFFactoryImpl.class); private RDFStorage storage; private URIGenerator generator; private RDFConverter converter; @Required public void setStorage(RDFStorage storage) { this.storage = storage; } @Required public void setGenerator(URIGenerator generator) { if (log.isDebugEnabled()) { log.debug("Using '" + generator.getClass().getCanonicalName() + "' as URIGenerator."); } this.generator = generator; } @Required public void setConverter(RDFConverter converter) { this.converter = converter; } @Override public RDFStorage getRDFStorage() { return storage; } @Override public URIGenerator getURIGenerator() { return generator; } @Override public RDFConverter getRDFConverter() { return converter; } }