public abstract class Balancer<T>
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
Balancer.Submit<T,R> |
| Constructor and Description |
|---|
Balancer() |
| Modifier and Type | Method and Description |
|---|---|
void |
addService(T service) |
<R> R |
execute(Balancer.Submit<T,R> submit) |
long |
getRecoveryPeriod() |
T |
getService() |
long |
getTimeout() |
protected void |
recover(T service) |
void |
setRecoveryPeriod(long recoveryPeriod) |
void |
setTimeout(long timeout) |
void |
start() |
protected abstract void |
start(T service) |
void |
stop() |
protected abstract void |
stop(T service) |
public T getService()
public long getTimeout()
public void setTimeout(long timeout)
public long getRecoveryPeriod()
public void setRecoveryPeriod(long recoveryPeriod)
public void addService(T service)
public void start()
public void stop()
protected abstract void start(T service) throws java.io.IOException
java.io.IOExceptionprotected abstract void stop(T service) throws java.io.IOException
java.io.IOExceptionprotected void recover(T service)
public <R> R execute(Balancer.Submit<T,R> submit) throws java.io.IOException
java.io.IOException