flux.runtimeconfiguration
Interface RuntimeConfigurationFactory


public interface RuntimeConfigurationFactory

Creates runtime configuration nodes and other runtime configuration objects.

Author:
Copyright 2014 Flux Corporation. All rights reserved.

Method Summary
 ConcurrencyConstraint makeConcurrencyConstraint()
          Makes a concurrency constraint, which can be set on a concurrency throttle in order to limit the number of concurrently execute jobs.
 ConcurrencyThrottle makeConcurrencyThrottle()
          Makes a concurrency throttle, which can be set on a runtime configuration node in order to limit the number of concurrently execute jobs.
 RuntimeConfigurationNode makeDefaultRuntimeConfiguration()
          Makes a default runtime configuration that is identical to flux.Configuration.DEFAULT_RUNTIME_CONFIGURATION_NODE except that it is mutable.
 RuntimeConfigurationNode makeRuntimeConfiguration()
          Makes an empty runtime configuration that can be updated to create a custom runtime configuration.
 

Method Detail

makeConcurrencyConstraint

ConcurrencyConstraint makeConcurrencyConstraint()
Makes a concurrency constraint, which can be set on a concurrency throttle in order to limit the number of concurrently execute jobs.

Returns:
A freshly made concurrency constraint.

makeConcurrencyThrottle

ConcurrencyThrottle makeConcurrencyThrottle()
Makes a concurrency throttle, which can be set on a runtime configuration node in order to limit the number of concurrently execute jobs.

Returns:
A freshly made concurrency throttle.

makeDefaultRuntimeConfiguration

RuntimeConfigurationNode makeDefaultRuntimeConfiguration()
Makes a default runtime configuration that is identical to flux.Configuration.DEFAULT_RUNTIME_CONFIGURATION_NODE except that it is mutable.

This default runtime configuration allows at most one job to run at the same time and defines a default error handler that retries failed actions up to five times, with one minute delays after a failure. This default error handler gives up after the fifth failure and places the job in the ERROR super-state and the PAUSED sub-state.

Returns:
A freshly made runtime configuration that is identical to flux.Configuration.DEFAULT_RUNTIME_CONFIGURATION_NODE except that it is mutable.
See Also:
Configuration.DEFAULT_RUNTIME_CONFIGURATION

makeRuntimeConfiguration

RuntimeConfigurationNode makeRuntimeConfiguration()
Makes an empty runtime configuration that can be updated to create a custom runtime configuration.

Note that the CONCURRENCY_THROTTLE property defaults to "1". It is required to have a CONCURRENCY_THROTTLE property in the root of the runtime configuration tree that constrains the total number of jobs that may execute simultaneously on the same Flux engine instance.

Note that the CONCURRENCY_THROTTLE limit does not limit the total number of jobs that can be added to a Flux engine or Flux engine cluster. It simply limits the number of jobs that can fire at the same time on a single Flux engine.

Returns:
A freshly made runtime configuration that can be updated to create a custom runtime configuration.


© 2014 Flux Corporation. All rights reserved.