public MelcoePDPImpl(PDPConfig pdpConfig) throws MelcoePDPException { m_pdp = new PDP(pdpConfig); m_finder = pdpConfig.getAttributeFinder(); logger.info("PDP Instantiated and initialised!"); }
/** * Constructs a new <code>PDP</code> object with the given configuration * information. * * @param config user configuration data defining how to find policies, * resolve external attributes, etc. */ public PDP(PDPConfig config) { logger.fine("creating a PDP"); attributeFinder = config.getAttributeFinder(); policyFinder = config.getPolicyFinder(); policyFinder.init(); resourceFinder = config.getResourceFinder(); }
/** * Private helper that handles the pdp elements. */ private PDPConfig parsePDPConfig(Node root) throws ParsingException { ArrayList attrModules = new ArrayList(); HashSet policyModules = new HashSet(); ArrayList rsrcModules = new ArrayList(); // go through all elements of the pdp, loading the specified modules NodeList children = root.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); String name = SunxacmlUtil.getNodeName(child); if (name.equals("policyFinderModule")) { policyModules.add(loadClass("module", child)); } else if (name.equals("attributeFinderModule")) { attrModules.add(loadClass("module", child)); } else if (name.equals("resourceFinderModule")) { rsrcModules.add(loadClass("module", child)); } } // after loading the modules, use the collections to setup a // PDPConfig based on this pdp element AttributeFinder attrFinder = new AttributeFinder(); attrFinder.setModules(attrModules); PolicyFinder policyFinder = new PolicyFinder(); policyFinder.setModules(policyModules); ResourceFinder rsrcFinder = new ResourceFinder(); rsrcFinder.setModules(rsrcModules); return new PDPConfig(attrFinder, policyFinder, rsrcFinder); }
pdp = new PDP(new PDPConfig(attributeFinder, policyFinder, null));
response = m_pdp.evaluate(new BasicEvaluationCtx(request, m_pdpConfig.getAttributeFinder(), context)); } finally { long dur = System.currentTimeMillis() - st;
public PDPConfig getPDPConfig(List<AttributeFinderModule> attributeFinders, Set<PolicyFinderModule> policyFinders, List<ResourceFinderModule> resourceFinders) { AttributeFinder attr = new AttributeFinder(); attr.setModules(attributeFinders); PolicyFinder policy = new PolicyFinder(); policy.setModules(policyFinders); ResourceFinder rsrc = new ResourceFinder(); rsrc.setModules(resourceFinders); return new PDPConfig(attr, policy, rsrc); }
try { response = m_pdp.evaluate(new BasicEvaluationCtx(request, m_pdpConfig.getAttributeFinder(), context)); } finally { if (debug) {
public PDPConfig getPDPConfig(List<AttributeFinderModule> attributeFinders, Set<PolicyFinderModule> policyFinders, List<ResourceFinderModule> resourceFinders) { AttributeFinder attr = new AttributeFinder(); attr.setModules(attributeFinders); PolicyFinder policy = new PolicyFinder(); policy.setModules(policyFinders); ResourceFinder rsrc = new ResourceFinder(); rsrc.setModules(resourceFinders); return new PDPConfig(attr, policy, rsrc); }
try { response = m_pdp.evaluate(new BasicEvaluationCtx(request, m_pdpConfig.getAttributeFinder())); } finally { if (debug) {
try { response = m_pdp.evaluate(new BasicEvaluationCtx(request, m_pdpConfig.getAttributeFinder(), context)); } finally { if (debug) {
try { response = m_pdp.evaluate(new BasicEvaluationCtx(request, m_pdpConfig.getAttributeFinder())); } finally { if (debug) {