{
  "model": {
    "kind": "model",
    "name": "faultToleranceConfiguration",
    "title": "Fault Tolerance Configuration",
    "description": "MicroProfile Fault Tolerance Circuit Breaker EIP configuration",
    "deprecated": false,
    "label": "eip,routing,circuitbreaker",
    "javaType": "org.apache.camel.model.FaultToleranceConfigurationDefinition",
    "input": false,
    "output": false
  },
  "properties": {
    "circuitBreakerRef": { "kind": "attribute", "displayName": "Circuit Breaker Ref", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Refers to an existing io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to lookup and use from the registry. When using this, then any other circuit breaker options are not in use." },
    "delay": { "kind": "attribute", "displayName": "Delay", "required": false, "type": "duration", "javaType": "java.lang.String", "deprecated": false, "secret": false, "defaultValue": "5s", "description": "Control how long the circuit breaker stays open. The value are in seconds and the default is 5 seconds." },
    "successThreshold": { "kind": "attribute", "displayName": "Success Threshold", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "1", "description": "Controls the number of trial calls which are allowed when the circuit breaker is half-open" },
    "requestVolumeThreshold": { "kind": "attribute", "displayName": "Request Volume Threshold", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "20", "description": "Controls the size of the rolling window used when the circuit breaker is closed" },
    "failureRatio": { "kind": "attribute", "displayName": "Failure Ratio", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "50", "description": "Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage." },
    "timeoutEnabled": { "kind": "attribute", "displayName": "Timeout Enabled", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "secret": false, "defaultValue": false, "description": "Whether timeout is enabled or not on the circuit breaker. Default is false." },
    "timeoutDuration": { "kind": "attribute", "displayName": "Timeout Duration", "required": false, "type": "duration", "javaType": "java.lang.String", "deprecated": false, "secret": false, "defaultValue": "1s", "description": "Configures the thread execution timeout. Default value is 1 second." },
    "timeoutPoolSize": { "kind": "attribute", "displayName": "Timeout Pool Size", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "10", "description": "Configures the pool size of the thread pool when timeout is enabled. Default value is 10." },
    "timeoutScheduledExecutorServiceRef": { "kind": "attribute", "displayName": "Timeout Scheduled Executor Service Ref", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "References to a custom thread pool to use when timeout is enabled" },
    "bulkheadEnabled": { "kind": "attribute", "displayName": "Bulkhead Enabled", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "secret": false, "defaultValue": false, "description": "Whether bulkhead is enabled or not on the circuit breaker. Default is false." },
    "bulkheadMaxConcurrentCalls": { "kind": "attribute", "displayName": "Bulkhead Max Concurrent Calls", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "10", "description": "Configures the max amount of concurrent calls the bulkhead will support." },
    "bulkheadWaitingTaskQueue": { "kind": "attribute", "displayName": "Bulkhead Waiting Task Queue", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "defaultValue": "10", "description": "Configures the task queue size for holding waiting tasks to be processed by the bulkhead." },
    "bulkheadExecutorServiceRef": { "kind": "attribute", "displayName": "Bulkhead Executor Service Ref", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "References to a custom thread pool to use when bulkhead is enabled." },
    "id": { "kind": "attribute", "displayName": "Id", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of this node" }
  }
}
