Package org.archive.accesscontrol.model

Examples of org.archive.accesscontrol.model.RuleSet


public class RuleSetTest extends TestCase {
    private RuleSet ruleset;
   
    public void testSimple() {
        ruleset = new RuleSet();
        ruleset.add(new Rule("robots", "("));
        ruleset.add(new Rule("allow", "(org,archive,"));
        ruleset.add(new Rule("block", "(org,archive,)/secret/"));
        ruleset.add(new Rule("allow", "(org,archive,)/secret/public/"));
       
View Full Code Here


        assertEquals("block", ruleset.getMatchingRule("(org,archive,)/secret/publics", new Date(), new Date(), null).getPolicy());
       
    }

    public void testSimplePrecedence() {
        ruleset = new RuleSet();
        ruleset.add(new Rule("robots", "("));
        ruleset.add(new Rule("allow", "("));
        ruleset.add(new Rule("block", "(org,archive,)/secret/"));
        ruleset.add(new Rule("allow", "(org,archive,)/secret/public/"));
        ruleset.add(new Rule("block", "(org,archive,)/secret/public/"));
View Full Code Here

        assertEquals("block", ruleset.getMatchingRule("(org,archive,)/secret/hamsters.html", new Date(), new Date(), null).getPolicy());
        assertEquals("allow", ruleset.getMatchingRule("(org,archive,)/secret/public/feeding.html", new Date(), new Date(), null).getPolicy());
    }

    public void testEmbargo() {
        ruleset = new RuleSet();
        ruleset.add(new Rule("robots", "("));
        ruleset.add(new Rule("allow", "(org,archive,"));
        ruleset.add(new Rule("block", "(org,archive,)/classified/"));
        ruleset.add(new Rule("allow", "(org,archive,)/classified/", 60 * 60 * 24 * 90));
       
View Full Code Here

        assertEquals("block", ruleset.getMatchingRule("(org,archive,)/classified/", captureDate, preReleaseDate, null).getPolicy());
        assertEquals("allow", ruleset.getMatchingRule("(org,archive,)/classified/index.html", captureDate, postReleaseDate, null).getPolicy());
    }
   
    public void testGroup() {
        ruleset = new RuleSet();
        ruleset.add(new Rule("robots", "("));
        ruleset.add(new Rule("allow", "(org,archive,", "archivists"));
        ruleset.add(new Rule("block", "(org,archive,)/classified/"));
        ruleset.add(new Rule("allow", "(org,archive,)/classified/", "admins"));
       
View Full Code Here

        assertEquals("block", ruleset.getMatchingRule("(org,archive,)/classified/presto", new Date(), new Date(), "public").getPolicy());
        assertEquals("robots", ruleset.getMatchingRule("(org,archive,)/classified-photons", new Date(), new Date(), "public").getPolicy());              
    }
   
    public void testIterator() {
      ruleset = new RuleSet();
      assertFalse(ruleset.iterator().hasNext());
    }
View Full Code Here

    public void setRuleDao(RuleDao ruleDao) {
        this.ruleDao = ruleDao;
    }

    public RuleSet getRuleTree(String surt) throws RuleOracleUnavailableException {
        RuleSet rules;
        synchronized (cache) {
            rules = cache.get(surt);
        }
        if (rules == null) {
            rules = ruleDao.getRuleTree(surt);
View Full Code Here

     * @throws RuleOracleUnavailableException
     * @see RuleDao#getRuleTree(String)
     */
    public RuleSet getRuleTree(String surt) throws RuleOracleUnavailableException {
        HttpMethod method = new GetMethod(oracleUrl + "/rules/tree/" + surt);
        RuleSet rules;

        try {
            http.executeMethod(method);
            String response = method.getResponseBodyAsString();
            System.out.println(response);
View Full Code Here

        url = ArchiveUtils.addImpliedHttpIfNecessary(url);
        String surt = SURT.fromURI(url);
        String publicSuffix = PublicSuffixes
                .reduceSurtToTopmostAssigned(getSurtAuthority(surt));

            RuleSet rules =  ruleDao.getRuleTree(getScheme(surt) + "(" + publicSuffix);

        Rule matchingRule = rules.getMatchingRule(surt, captureDate,
                retrievalDate, who);
        return matchingRule;
    }
View Full Code Here

            HttpServletResponse response) throws Exception {
       
        surt = cleanSurt(surt);       
        int surtSegments = new NewSurtTokenizer(surt).toList().size();
        Map<String, Object> model = new HashMap<String, Object>();
        RuleSet rules = ruleDao.getRuleTree(surt);
        ArrayList<DisplayRule> ruleList = new ArrayList<DisplayRule>();
        ArrayList<String> childSurts = new ArrayList<String>();
       
        for (Rule rule: rules) {
            int comparison = rule.getSurt().compareTo(surt);
View Full Code Here

TOP

Related Classes of org.archive.accesscontrol.model.RuleSet

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.