package org.openecomp.policy.xacml.api.pap; import java.util.Properties; import com.att.research.xacml.api.pap.PAPException; import com.att.research.xacml.util.FactoryException; import com.att.research.xacml.util.FactoryFinder; public abstract class ECOMPPapEngineFactory{ /** * Creates a new PAPEngineFactory instance using the given class name and the default thread class loader. * * @param factoryClassName the String name of the factory class to instantiate * @return an instance of an object that extends ECOMPPapEngineFactory to use in creating PAPPolicyEngine objects. */ public static ECOMPPapEngineFactory newInstance(String factoryClassName) throws FactoryException { return FactoryFinder.newInstance(factoryClassName, ECOMPPapEngineFactory.class, null, true); } /** * Creates a new PAPPolicyEngine based on the configured ECOMPPapEngineFactory. * * @return a new PAPPolicyEngine * @throws PAPException */ public abstract PAPPolicyEngine newEngine() throws FactoryException, PAPException; /** * Creates a new PAPPolicyEngine based on the configured ECOMPPapEngineFactory. * * @return a new PAPPolicyEngine * @throws PAPException */ public abstract PAPPolicyEngine newEngine(Properties properties) throws FactoryException, PAPException; }