{
  "model": {
    "kind": "model",
    "name": "failover",
    "title": "Failover",
    "description": "In case of failures the exchange will be tried on the next endpoint.",
    "deprecated": false,
    "label": "eip,routing",
    "javaType": "org.apache.camel.model.loadbalancer.FailoverLoadBalancerDefinition",
    "abstract": false,
    "input": false,
    "output": false
  },
  "properties": {
    "exception": { "index": 0, "kind": "element", "displayName": "Exception", "required": false, "type": "array", "javaType": "java.util.List<java.lang.String>", "deprecated": false, "autowired": false, "secret": false, "description": "A list of class names for specific exceptions to monitor. If no exceptions are configured then all exceptions are monitored" },
    "roundRobin": { "index": 1, "kind": "attribute", "displayName": "Round Robin", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Whether or not the failover load balancer should operate in round robin mode or not. If not, then it will always start from the first endpoint when a new message is to be processed. In other words it restart from the top for every message. If round robin is enabled, then it keeps state and will continue with the next endpoint in a round robin fashion. You can also enable sticky mode together with round robin, if so then it will pick the last known good endpoint to use when starting the load balancing (instead of using the next when starting)." },
    "sticky": { "index": 2, "kind": "attribute", "displayName": "Sticky", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Whether or not the failover load balancer should operate in sticky mode or not. If not, then it will always start from the first endpoint when a new message is to be processed. In other words it restart from the top for every message. If sticky is enabled, then it keeps state and will continue with the last known good endpoint. You can also enable sticky mode together with round robin, if so then it will pick the last known good endpoint to use when starting the load balancing (instead of using the next when starting)." },
    "maximumFailoverAttempts": { "index": 3, "kind": "attribute", "displayName": "Maximum Failover Attempts", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "-1", "description": "A value to indicate after X failover attempts we should exhaust (give up). Use -1 to indicate never give up and continuously try to failover. Use 0 to never failover. And use e.g. 3 to failover at most 3 times before giving up. his option can be used whether or not roundRobin is enabled or not." },
    "id": { "index": 4, "kind": "attribute", "displayName": "Id", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" }
  }
}
