package gov.nist.registry.ws.config; import gov.nist.registry.common2.exception.XdsException; import gov.nist.registry.common2.registry.ErrorLogger; import gov.nist.registry.common2.registry.Response; import gov.nist.registry.common2.registry.storedquery.SqParams; import gov.nist.registry.common2.registry.storedquery.StoredQuerySupport; import gov.nist.registry.ws.configurations.ebxmlrr21.Ebxmlrr21StoredQueryFactory; import gov.nist.registry.ws.sq.RegistryObjectValidator; import gov.nist.registry.ws.sq.RegistryValidations; import gov.nist.registry.ws.sq.StoredQueryFactory; import gov.nist.registry.ws.sq.ebxmlrr21.EbXML21QuerySupport; import gov.nist.registry.ws.sq.ebxmlrr21.EbXML21RegistryObjectValidator; import org.apache.axiom.om.OMElement; import org.openhealthtools.openxds.log.LogMessage; import org.openhealthtools.openxds.log.LoggerException; /** * This class configures the Registry actor by pointing to concrete implementations of key * sub-systems. Each getter returns a factory object specialized in some aspect of the Registry * actor implementation. * @author bill * */ public class Registry { /** * Get a Stored Query Factory implementation for the current implementation. * @param ahqr - the Stored Query request * @return StoredQueryFactory object * @throws XdsException * @throws LoggerException */ public static StoredQueryFactory getStoredQueryFactory(OMElement ahqr, Response response, LogMessage log_message) throws XdsException, LoggerException{ return new Ebxmlrr21StoredQueryFactory(ahqr, response, log_message); } /** * Get a Stored Query Factory implementation for the current implementation. * @params ahqr - the Stored Query request * @return StoredQueryFactory object * @throws XdsException * @throws LoggerException */ public static StoredQueryFactory getStoredQueryFactory(SqParams params, Response response, LogMessage log_message) throws XdsException, LoggerException{ return new Ebxmlrr21StoredQueryFactory(params, response, log_message); } public static RegistryValidations getRegistryValidations(ErrorLogger response, LogMessage logMessage) throws LoggerException { StoredQuerySupport sqs = new StoredQuerySupport(response, logMessage); return new EbXML21QuerySupport(sqs); } public static RegistryObjectValidator getRegistryObjectValidator(StoredQuerySupport sqs) { return new EbXML21RegistryObjectValidator(sqs); } }