Class DefaultPreStartConfig

java.lang.Object
software.xdev.tci.factory.prestart.config.DefaultPreStartConfig
All Implemented Interfaces:
PreStartConfig

public class DefaultPreStartConfig extends Object implements PreStartConfig
Default implementation of PreStartConfig using system properties.
  • Field Details

    • PROPERTY_PREFIX

      protected static final String PROPERTY_PREFIX
      See Also:
    • KEEP_READY

      protected static final String KEEP_READY
      See Also:
    • MAX_START_SIMULTAN

      protected static final String MAX_START_SIMULTAN
      See Also:
    • DIRECT_NETWORK_ATTACH_IF_POSSIBLE

      protected static final String DIRECT_NETWORK_ATTACH_IF_POSSIBLE
      See Also:
    • JUNIT_JUPITER_EXECUTION_PARALLEL_CONFIG_FIXED_MAX_POOL_SIZE

      protected static final String JUNIT_JUPITER_EXECUTION_PARALLEL_CONFIG_FIXED_MAX_POOL_SIZE
      See Also:
    • COORDINATOR_IDLE_CPU_PERCENT

      protected static final String COORDINATOR_IDLE_CPU_PERCENT
      See Also:
    • COORDINATOR_SCHEDULE_PERIOD_MS

      protected static final String COORDINATOR_SCHEDULE_PERIOD_MS
      See Also:
    • DETECT_ENDING_TESTS

      protected static final String DETECT_ENDING_TESTS
      See Also:
    • enabled

      protected final boolean enabled
    • keepReady

      protected final int keepReady
    • maxStartSimultan

      protected final int maxStartSimultan
    • directNetworkAttachIfPossible

      protected final boolean directNetworkAttachIfPossible
    • coordinatorIdleCPUPercent

      protected final int coordinatorIdleCPUPercent
    • coordinatorSchedulePeriodMs

      protected final int coordinatorSchedulePeriodMs
    • detectEndingTests

      protected final boolean detectEndingTests
  • Constructor Details

    • DefaultPreStartConfig

      public DefaultPreStartConfig()
  • Method Details

    • enabled

      public boolean enabled()
      Specified by:
      enabled in interface PreStartConfig
    • keepReady

      public int keepReady(String preStartName)
      Description copied from interface: PreStartConfig
      How many infrastructures s
      Specified by:
      keepReady in interface PreStartConfig
    • maxStartSimultan

      public int maxStartSimultan(String preStartName)
      Specified by:
      maxStartSimultan in interface PreStartConfig
    • directNetworkAttachIfPossible

      public boolean directNetworkAttachIfPossible(String preStartName)
      Description copied from interface: PreStartConfig
      Tries to directly attach the container to the network if possible.

      This speeds up overall time but (as no docker network connect is needed) but it's a different behavior then PreStarting (if implemented incorrectly may cause "random" problems)

      DEBUG-Option - default value should be fine.

      Specified by:
      directNetworkAttachIfPossible in interface PreStartConfig
    • coordinatorIdleCPUPercent

      public int coordinatorIdleCPUPercent()
      Description copied from interface: PreStartConfig
      Amount of CPU that needs to be idle to allow PreStarting of containers.
      Specified by:
      coordinatorIdleCPUPercent in interface PreStartConfig
    • coordinatorSchedulePeriodMs

      public int coordinatorSchedulePeriodMs()
      Description copied from interface: PreStartConfig
      How often PreStarting should be tried (one factory per schedule!)
      Specified by:
      coordinatorSchedulePeriodMs in interface PreStartConfig
    • detectEndingTests

      public boolean detectEndingTests()
      Description copied from interface: PreStartConfig
      Should PreStarting be stopped when tests are ending?

      DEBUG-Option - default value should be fine.

      Specified by:
      detectEndingTests in interface PreStartConfig
    • getBool

      protected boolean getBool(String property, boolean defaultValue)
    • getBool

      protected boolean getBool(String property, BooleanSupplier defaultValueSupplier)
    • getInt

      protected int getInt(String property, int defaultValue)
    • getInt

      protected int getInt(String property, IntSupplier defaultValueSupplier)