public class ConfigurableScenarioDecider extends java.lang.Object implements ScenarioConnectionFactoryWrapper.ScenarioDecider
ScenarioConnectionFactoryWrapper.ScenarioDecider
, whose defaults implements the logic described in
ScenarioConnectionFactoryProducer
and handles all the Spring Profiles specified in MatsProfiles
.Modifier and Type | Class and Description |
---|---|
static interface |
ConfigurableScenarioDecider.SpecificScenarioDecider
An implementation of this interface can decide whether a specific Mats Scenario is active.
|
static class |
ConfigurableScenarioDecider.StandardSpecificScenarioDecider
Standard implementation of
ConfigurableScenarioDecider.SpecificScenarioDecider used in the default configuration of
ConfigurableScenarioDecider , which takes a set of profile-or-properties names and checks whether they are
present as a Spring Profile, or (with the "-" replaced by ".") whether it exists as a property in the Spring
Environment. |
Modifier and Type | Field and Description |
---|---|
protected java.util.function.Supplier<MatsScenario> |
_defaultScenario |
protected ConfigurableScenarioDecider.SpecificScenarioDecider |
_localhost |
protected ConfigurableScenarioDecider.SpecificScenarioDecider |
_localVm |
protected ConfigurableScenarioDecider.SpecificScenarioDecider |
_regular |
Constructor and Description |
---|
ConfigurableScenarioDecider()
No-args constructor - must set all the
ConfigurableScenarioDecider.SpecificScenarioDecider and default MatsScenario by setters. |
ConfigurableScenarioDecider(ConfigurableScenarioDecider.SpecificScenarioDecider regular,
ConfigurableScenarioDecider.SpecificScenarioDecider localhost,
ConfigurableScenarioDecider.SpecificScenarioDecider localVm,
java.util.function.Supplier<MatsScenario> defaultScenario)
Takes a
ConfigurableScenarioDecider.SpecificScenarioDecider for each of the MatsScenario s, and a default Supplier of
MatsScenario if none of the SpecificScenarioDeciders kicks in - notice that it makes sense that the default
instead of providing a MatsScenario instead throws an e.g. |
Modifier and Type | Method and Description |
---|---|
static ConfigurableScenarioDecider |
createDefaultScenarioDecider()
Configures a
ScenarioConnectionFactoryWrapper.ScenarioDecider that implements the logic described in
ScenarioConnectionFactoryProducer and handles all the Spring Profiles specified in MatsProfiles . |
MatsScenario |
decision(org.springframework.core.env.Environment env) |
ConfigurableScenarioDecider |
setDefaultScenario(java.util.function.Supplier<MatsScenario> defaultScenario) |
ConfigurableScenarioDecider |
setLocalhostDecider(ConfigurableScenarioDecider.SpecificScenarioDecider localhost) |
ConfigurableScenarioDecider |
setLocalVmDecider(ConfigurableScenarioDecider.SpecificScenarioDecider localVm) |
ConfigurableScenarioDecider |
setRegularDecider(ConfigurableScenarioDecider.SpecificScenarioDecider regular) |
protected ConfigurableScenarioDecider.SpecificScenarioDecider _regular
protected ConfigurableScenarioDecider.SpecificScenarioDecider _localhost
protected ConfigurableScenarioDecider.SpecificScenarioDecider _localVm
protected java.util.function.Supplier<MatsScenario> _defaultScenario
public ConfigurableScenarioDecider(ConfigurableScenarioDecider.SpecificScenarioDecider regular, ConfigurableScenarioDecider.SpecificScenarioDecider localhost, ConfigurableScenarioDecider.SpecificScenarioDecider localVm, java.util.function.Supplier<MatsScenario> defaultScenario)
ConfigurableScenarioDecider.SpecificScenarioDecider
for each of the MatsScenario
s, and a default Supplier of
MatsScenario if none of the SpecificScenarioDeciders kicks in - notice that it makes sense that the default
instead of providing a MatsScenario instead throws an e.g. IllegalStateException
(this is what the
ScenarioConnectionFactoryWrapper.ScenarioDecider
from createDefaultScenarioDecider()
does).public ConfigurableScenarioDecider()
ConfigurableScenarioDecider.SpecificScenarioDecider
and default MatsScenario by setters.public static ConfigurableScenarioDecider createDefaultScenarioDecider()
ScenarioConnectionFactoryWrapper.ScenarioDecider
that implements the logic described in
ScenarioConnectionFactoryProducer
and handles all the Spring Profiles specified in MatsProfiles
.ScenarioConnectionFactoryWrapper.ScenarioDecider
public ConfigurableScenarioDecider setRegularDecider(ConfigurableScenarioDecider.SpecificScenarioDecider regular)
public ConfigurableScenarioDecider setLocalhostDecider(ConfigurableScenarioDecider.SpecificScenarioDecider localhost)
public ConfigurableScenarioDecider setLocalVmDecider(ConfigurableScenarioDecider.SpecificScenarioDecider localVm)
public ConfigurableScenarioDecider setDefaultScenario(java.util.function.Supplier<MatsScenario> defaultScenario)
public MatsScenario decision(org.springframework.core.env.Environment env)
decision
in interface ScenarioConnectionFactoryWrapper.ScenarioDecider