de.cesr.lara.components.preprocessor
Interface LaraPreprocessorConfigurator<A extends LaraAgent<? super A,BO>,BO extends LaraBehaviouralOption<?,? extends BO>>

Type Parameters:
A - the type of agents the preprocessor builder is intended for
BO - the type of behavioural options the preprocessor manages
All Known Implementing Classes:
LPreprocessorConfigurator

public interface LaraPreprocessorConfigurator<A extends LaraAgent<? super A,BO>,BO extends LaraBehaviouralOption<?,? extends BO>>

This configurator is used to configure a LaraPreprocessor with desired preprocessor components. The BO type parameter indicates which BO classes the pre-processor may handle. Components BO type need to exactly match that BO type. as component BO parameter does not work since A does not fulfill ? super (? super BO) regarding BO parameter for the component (in which that would result for the component).


Method Summary
 LaraPreprocessorConfigurator<A,BO> clone()
          Return a new configuration that meets this configuration.
<T> T
get(LaraDecisionConfiguration dConfiguration, Class<? super T> type)
           
 LaraBOCollector<A,BO> getDefaultBoCollector()
           
 LaraBOPreselector<A,BO> getDefaultBoPreselector()
           
 LaraBOUtilityUpdater<A,BO> getDefaultBoUtilityUpdater()
           
 LaraDecisionModeSelector<A,BO> getDefaultDecisionModeSelector()
           
 LaraPreferenceUpdater<A,BO> getDefaultPreferenceUpdater()
           
<T extends LaraPreprocessorComp<A,BO>>
Map<LaraDecisionConfiguration,T>
getMap(Class<? super T> compType)
          Provides the map of LaraDecisionConfiguration to LaraPreprocessorComp as defined by the given component class.
 LaraPreprocessor<A,BO> getPreprocessor()
          Provides the LaraPreprocessor that matches this configuration.
<T extends LaraPreprocessorComp<A,BO>>
void
set(LaraDecisionConfiguration dConfiguration, Class<? super T> type, T value)
           
 void setBOAdapter(LaraBOUtilityUpdater<A,BO> boAdapter)
           
 void setBOAdapter(LaraBOUtilityUpdater<A,BO> boUpdater, LaraDecisionConfiguration dConfiguration)
          Specifying null corresponds to LaraPreprocessorConfigurator#setBOAdapter(LaraBOUtilityUpdaterBuilder) and sets the default.
 void setBOCollector(LaraBOCollector<A,BO> boCollector)
           
 void setBOCollector(LaraBOCollector<A,BO> bOCollector, LaraDecisionConfiguration dConfiguration)
          Specifying null corresponds to setBOCollector(LaraBOCollector) and sets the default.
 void setBoPreselector(LaraBOPreselector<A,BO> boChecker)
           
 void setBOPreselector(LaraBOPreselector<A,BO> boPreselector, LaraDecisionConfiguration dConfiguration)
          Specifying null corresponds to ) and sets the default.
 void setDecisionModeSelector(LaraDecisionModeSelector<A,BO> decisionModeSelector)
           
 void setDecisionModeSelector(LaraDecisionModeSelector<A,BO> decisionModeSelector, LaraDecisionConfiguration dConfiguration)
          Specifying null corresponds to ) and sets the default.
 void setPreferenceUpdater(LaraPreferenceUpdater<? extends A,BO> prefUpdater)
           
 void setPreferenceUpdater(LaraPreferenceUpdater<? extends A,BO> prefUpdater, LaraDecisionConfiguration dConfiguration)
          Specifying null corresponds to setPreferenceUpdater(LaraPreferenceUpdater) and sets the default.
 

Method Detail

clone

LaraPreprocessorConfigurator<A,BO> clone()
Return a new configuration that meets this configuration. This is intended for creating new LaraPreprocessors with a different configuration. I.e. the provided configuration is altered and used to create a new pre-processor.

Returns:
new configuration that meets this configuration

get

<T> T get(LaraDecisionConfiguration dConfiguration,
          Class<? super T> type)
Type Parameters:
T - the general type of the requested component
Parameters:
dConfiguration - The LaraDecisionConfiguration the given component shall be applied to.
type - the general type of the requested component
Returns:

getDefaultBoCollector

LaraBOCollector<A,BO> getDefaultBoCollector()
Returns:
the default LaraBOCollector

getDefaultBoPreselector

LaraBOPreselector<A,BO> getDefaultBoPreselector()
Returns:
the default LaraBOPreselector

getDefaultBoUtilityUpdater

LaraBOUtilityUpdater<A,BO> getDefaultBoUtilityUpdater()
Returns:
the default LaraBOUtilityUpdater

getDefaultDecisionModeSelector

LaraDecisionModeSelector<A,BO> getDefaultDecisionModeSelector()
Returns:
the default LaraDecisionConfiguration

getDefaultPreferenceUpdater

LaraPreferenceUpdater<A,BO> getDefaultPreferenceUpdater()
Returns:
the default LaraPreferenceUpdater

getMap

<T extends LaraPreprocessorComp<A,BO>> Map<LaraDecisionConfiguration,T> getMap(Class<? super T> compType)
Provides the map of LaraDecisionConfiguration to LaraPreprocessorComp as defined by the given component class.

Type Parameters:
T - the generic type of the agent
Parameters:
compType - the class of component type that is requested
Returns:
the map of defined components

getPreprocessor

LaraPreprocessor<A,BO> getPreprocessor()
Provides the LaraPreprocessor that matches this configuration.

Returns:
preprocessor for the given configuration

set

<T extends LaraPreprocessorComp<A,BO>> void set(LaraDecisionConfiguration dConfiguration,
                                                Class<? super T> type,
                                                T value)
Type Parameters:
T - the generic type of the agent
U - the generic type of the requested component
Parameters:
dConfiguration - The LaraDecisionConfiguration the given component shall be applied to.
type - the general type of the requested component
value -

setBOAdapter

void setBOAdapter(LaraBOUtilityUpdater<A,BO> boAdapter)
Parameters:
boAdapter -

setBOAdapter

void setBOAdapter(LaraBOUtilityUpdater<A,BO> boUpdater,
                  LaraDecisionConfiguration dConfiguration)
Specifying null corresponds to LaraPreprocessorConfigurator#setBOAdapter(LaraBOUtilityUpdaterBuilder) and sets the default.

Parameters:
boUpdater -
dConfiguration - The LaraDecisionConfiguration the given behavioural options utilityUpdater shall be applied to.

setBOCollector

void setBOCollector(LaraBOCollector<A,BO> boCollector)
Parameters:
boCollector -

setBOCollector

void setBOCollector(LaraBOCollector<A,BO> bOCollector,
                    LaraDecisionConfiguration dConfiguration)
Specifying null corresponds to setBOCollector(LaraBOCollector) and sets the default.

Parameters:
bOCollector -
dConfiguration - The LaraDecisionConfiguration the given behavioural options collector shall be applied to.

setBoPreselector

void setBoPreselector(LaraBOPreselector<A,BO> boChecker)
Parameters:
boChecker -

setBOPreselector

void setBOPreselector(LaraBOPreselector<A,BO> boPreselector,
                      LaraDecisionConfiguration dConfiguration)
Specifying null corresponds to ) and sets the default.

Parameters:
boPreselector -
dConfiguration - The LaraDecisionConfiguration the given behavioural options preselector shall be applied to.

setDecisionModeSelector

void setDecisionModeSelector(LaraDecisionModeSelector<A,BO> decisionModeSelector)
Parameters:
decisionModeSelector -

setDecisionModeSelector

void setDecisionModeSelector(LaraDecisionModeSelector<A,BO> decisionModeSelector,
                             LaraDecisionConfiguration dConfiguration)
Specifying null corresponds to ) and sets the default.

Parameters:
decisionModeSelector -
dConfiguration - The LaraDecisionConfiguration the given mode selector shall be applied to.

setPreferenceUpdater

void setPreferenceUpdater(LaraPreferenceUpdater<? extends A,BO> prefUpdater)
Parameters:
prefUpdater -

setPreferenceUpdater

void setPreferenceUpdater(LaraPreferenceUpdater<? extends A,BO> prefUpdater,
                          LaraDecisionConfiguration dConfiguration)
Specifying null corresponds to setPreferenceUpdater(LaraPreferenceUpdater) and sets the default.

Parameters:
prefUpdater -
dConfiguration - The LaraDecisionConfiguration the given preference utilityUpdater shall be applied to.