org.archive.crawler.deciderules
Class DecideRuleSequence

java.lang.Object
  extended by javax.management.Attribute
      extended by org.archive.crawler.settings.Type
          extended by org.archive.crawler.settings.ComplexType
              extended by org.archive.crawler.settings.ModuleType
                  extended by org.archive.crawler.deciderules.DecideRule
                      extended by org.archive.crawler.deciderules.DecideRuleSequence
All Implemented Interfaces:
java.io.Serializable, javax.management.DynamicMBean

public class DecideRuleSequence
extends DecideRule

RuleSequence represents a series of Rules, which are applied in turn to give the final result. Rules return DecideRule.ACCEPT, DecideRule.REJECT, or DecideRule.PASS. The final result of a DecideRuleSequence is that of the last rule decision made, either ACCEPT or REJECT (PASS is used by rules that do not have an opinion on a particular processing pass).

Author:
gojomo
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.archive.crawler.settings.ComplexType
ComplexType.MBeanAttributeInfoIterator
 
Field Summary
static java.lang.String ATTR_RULES
           
 
Fields inherited from class org.archive.crawler.deciderules.DecideRule
ACCEPT, PASS, REJECT
 
Fields inherited from class org.archive.crawler.settings.ComplexType
definition, definitionMap
 
Constructor Summary
DecideRuleSequence(java.lang.String name)
           
DecideRuleSequence(java.lang.String name, java.lang.String description)
           
 
Method Summary
 java.lang.Object decisionFor(java.lang.Object object)
          Make decision on passed object.
protected  MapType getRules(java.lang.Object o)
           
 void kickUpdate()
          Respond to a settings update, refreshing any internal settings-derived state.
 
Methods inherited from class org.archive.crawler.deciderules.DecideRule
getController, singlePossibleNonPassDecision
 
Methods inherited from class org.archive.crawler.settings.ModuleType
addElement, listUsedFiles
 
Methods inherited from class org.archive.crawler.settings.ComplexType
addElementToDefinition, checkValue, earlyInitialize, getAbsoluteName, getAttribute, getAttribute, getAttribute, getAttributeInfo, getAttributeInfo, getAttributeInfoIterator, getAttributes, getDataContainerRecursive, getDataContainerRecursive, getDefaultValue, getDescription, getElementFromDefinition, getLegalValues, getLocalAttribute, getMBeanInfo, getMBeanInfo, getParent, getPreservedFields, getSettingsHandler, getUncheckedAttribute, getValue, globalSettings, invoke, isInitialized, isOverridden, iterator, removeElementFromDefinition, setAsOrder, setAttribute, setAttribute, setAttributes, setDescription, setPreservedFields, toString, unsetAttribute
 
Methods inherited from class org.archive.crawler.settings.Type
addConstraint, equals, getConstraints, getLegalValueType, isExpertSetting, isOverrideable, isTransient, setExpertSetting, setLegalValueType, setOverrideable, setTransient
 
Methods inherited from class javax.management.Attribute
getName, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ATTR_RULES

public static final java.lang.String ATTR_RULES
See Also:
Constant Field Values
Constructor Detail

DecideRuleSequence

public DecideRuleSequence(java.lang.String name)

DecideRuleSequence

public DecideRuleSequence(java.lang.String name,
                          java.lang.String description)
Method Detail

decisionFor

public java.lang.Object decisionFor(java.lang.Object object)
Description copied from class: DecideRule
Make decision on passed object.

Overrides:
decisionFor in class DecideRule
Parameters:
object - Object to rule on.
Returns:
DecideRule.ACCEPT, DecideRule.REJECT, or DecideRule.PASS.

getRules

protected MapType getRules(java.lang.Object o)

kickUpdate

public void kickUpdate()
Description copied from class: DecideRule
Respond to a settings update, refreshing any internal settings-derived state. This method gives implementors a chance to refresh internal state after a settings change. Normally new settings are picked up w/o the need of work on the part of settings' clients but some facilities -- for example, Surt classes need to sort submissions into common-prefix-coalesced collection of Surt prefixes, or, settings changes that alter external file or seeds/directives references -- need to be flagged so they can take compensatory action.

Overrides:
kickUpdate in class DecideRule


Copyright © 2003-2011 Internet Archive. All Rights Reserved.