} else if (this instanceof Unmarshal) {
return "unmarshal";
} else if (this instanceof Try) {
return "try";
} else if (this instanceof LoadBalance) {
LoadBalance load = (LoadBalance) this;
if (load.getRef() != null) {
return "custom " + Strings.getOrElse(load.getRef());
} else if (load.getLoadBalancerType() != null) {
if (load.getLoadBalancerType().getClass().isAssignableFrom(CustomLoadBalancerDefinition.class)) {
CustomLoadBalancerDefinition custom = (CustomLoadBalancerDefinition) load.getLoadBalancerType();
return "custom " + Strings.getOrElse(custom.getRef());
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(FailoverLoadBalancerDefinition.class)) {
return "failover";
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(RandomLoadBalancerDefinition.class)) {
return "random";
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(RoundRobinLoadBalancerDefinition.class)) {
return "round robin";
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(StickyLoadBalancerDefinition.class)) {
return "sticky";
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(TopicLoadBalancerDefinition.class)) {
return "topic";
} else if (load.getLoadBalancerType().getClass().isAssignableFrom(WeightedLoadBalancerDefinition.class)) {
return "weighted";
}
} else {
return "load balance";
}