@@ -0,0 +1,1010 @@
+package com.lifeonwalden.ebmms.client;%0A%0Aimport java.util.concurrent.atomic.AtomicInteger;%0A%0A/**%0A * Netty Client connection pooling%0A */%0Apublic class ClientPool %7B%0A    /**%0A     * allowed maximum size of client%0A     */%0A    private int maxSize = 1;%0A%0A    /**%0A     * allowed core size of client%0A     */%0A    private int coreSize = 1;%0A%0A    /**%0A     * allowed idle size of client%0A     */%0A    private int idleSize = 1;%0A%0A    /**%0A     * current size of alive client%0A     */%0A    private AtomicInteger aliveSize;%0A%0A%0A%0A    public int getMaxSize() %7B%0A        return maxSize;%0A    %7D%0A%0A    public void setMaxSize(int maxSize) %7B%0A        this.maxSize = maxSize;%0A    %7D%0A%0A    public int getCoreSize() %7B%0A        return coreSize;%0A    %7D%0A%0A    public void setCoreSize(int coreSize) %7B%0A        this.coreSize = coreSize;%0A    %7D%0A%0A    public int getIdleSize() %7B%0A        return idleSize;%0A    %7D%0A%0A    public void setIdleSize(int idleSize) %7B%0A        this.idleSize = idleSize;%0A    %7D%0A%0A    public int getAliveSize() %7B%0A        return aliveSize.get();%0A    %7D%0A%7D%0A

add client pool for reusing client