jp.livewell.baby.pool
インタフェース Pool

既知の実装クラスの一覧:
AbstractPool

public interface Pool

Pool動作を行うclassのinterfaceです。

作成者:
mitsuhito

メソッドの概要
 void dispose(Wrapper wrapper)
          取得したインスタンスを1つ破棄します。
 Factory getFactory()
          このプールに格納されているインスタンスを生成しているFactoryのインス タンスを取得します
 float getGrowPoint()
          プール内のインスタンス数が増加し始めるプールの使用率を取得します。
 int getIdleCheckInterval()
          プール内のインスタンス数を調整するアイドル時の時間間隔(ms)を取得します。
 int getMaxSize()
          プール内部に保持できるインスタンスの最大サイズを取得します。
 int getMinCheckInterval()
          プール内のインスタンス数を調整する最短の時間間隔(ms)を取得します。
 int getMinSize()
          プール内部に保持しておくインスタンスの最小サイズを取得します。
 java.lang.String getName()
          プールの名前を取得します。
 PoolReference getPoolReference()
          このPoolへの参照を取得します。
 int getRemovedSize()
          現在外部に取り出されているインスタンスの数を取得します。
 float getShrinkPoint()
          プール内のインスタンス数が減少し始めるプールの使用率を取得します。
 int getStoredSize()
          現在プール内に保持しているインスタンスの数を返します。
 int getTimeout()
          プールのタイムアウト時間(取得までの最大待機時間)を取得します。
 int getTotalSize()
          現在保持、又は外部に取り出されているインスタンスの合計を取得します。
 int getWaitSize()
          現在インスタンスを取得待ちしているthreadの数を取得します。
 boolean grow()
          プールするインスタンスを1つ増やします。
 void restore(Wrapper wrapper)
          取得したインスタンスを1つ、プールへ戻します。
 boolean shrink()
          プールするインスタンスを1つ減らします。
 Wrapper takeout()
          プールに格納されているインスタンスを1つ取り出します。
 Wrapper takeout(int maxTime)
          プールに格納されているインスタンスを1つ取り出します。
 

メソッドの詳細

getName

public java.lang.String getName()
プールの名前を取得します。
戻り値:
このプールの名前。

getTimeout

public int getTimeout()
プールのタイムアウト時間(取得までの最大待機時間)を取得します。
戻り値:
タイムアウト時間(取得までの最大待機時間)

getMaxSize

public int getMaxSize()
プール内部に保持できるインスタンスの最大サイズを取得します。
戻り値:
プール内部に保持できるインスタンスの最大サイズ。

getMinSize

public int getMinSize()
プール内部に保持しておくインスタンスの最小サイズを取得します。
戻り値:
プール内部に保持しておくインスタンスの最小サイズ

getGrowPoint

public float getGrowPoint()
プール内のインスタンス数が増加し始めるプールの使用率を取得します。
戻り値:
インスタンス数が増加し始めるプールの使用率

getShrinkPoint

public float getShrinkPoint()
プール内のインスタンス数が減少し始めるプールの使用率を取得します。
戻り値:
インスタンス数が減少し始めるプールの使用率

getMinCheckInterval

public int getMinCheckInterval()
プール内のインスタンス数を調整する最短の時間間隔(ms)を取得します。
戻り値:
プール内のインスタンス数を調整する最短の時間間隔(ms)

getIdleCheckInterval

public int getIdleCheckInterval()
プール内のインスタンス数を調整するアイドル時の時間間隔(ms)を取得します。
戻り値:
プール内のインスタンス数を調整するアイドル時の時間間隔(ms)

getRemovedSize

public int getRemovedSize()
現在外部に取り出されているインスタンスの数を取得します。
戻り値:
現在外部に取り出されているインスタンスの数

getStoredSize

public int getStoredSize()
現在プール内に保持しているインスタンスの数を返します。
戻り値:
現在プール内に保持しているインスタンスの数

getTotalSize

public int getTotalSize()
現在保持、又は外部に取り出されているインスタンスの合計を取得します。
戻り値:
現在保持、又は外部に取り出されているインスタンスの合計

getWaitSize

public int getWaitSize()
現在インスタンスを取得待ちしているthreadの数を取得します。
戻り値:
現在インスタンスを取得待ちしているthreadの数

getFactory

public Factory getFactory()
このプールに格納されているインスタンスを生成しているFactoryのインス タンスを取得します
戻り値:
このプールのFactory

getPoolReference

public PoolReference getPoolReference()
このPoolへの参照を取得します。
戻り値:
このPoolへの参照

takeout

public Wrapper takeout()
                throws TimeoutException
プールに格納されているインスタンスを1つ取り出します。 インスタンスが存在しない場合はgetTimeoutで示される時間(ms)threadがブ ロックされ、その後TimeoutExceptionをthrowして復帰します。timeoutに0を 指定している場合は取得できるまで戻って来ません。負の値を指定している 場合は取得できなければ即座にnullを返します。
戻り値:
格納されていたインスタンスを保持するWrapper object。 またはnull。
例外:
TimeoutException - インスタンスを取得出来ずにtimeout( > 0)以上時間が経過した場 合。

takeout

public Wrapper takeout(int maxTime)
                throws TimeoutException
プールに格納されているインスタンスを1つ取り出します。 インスタンスが存在しない場合はmaxWaitで示される時間(ms)threadがブ ロックされ、その後TimeoutExceptionをthrowして復帰します。maxWaitに0を 指定している場合は取得できるまで戻って来ません。負の値を指定している 場合は取得できなければ即座にnullを返します。
パラメータ:
maxTime - インスタンス取得の最大待ち時間。0を指定すると取得できるまで 待ち、負の値を指定すると取得できなければnullを戻します。
戻り値:
格納されていたインスタンスを保持するWrapper object。 またはnull。
例外:
TimeoutException - インスタンスを取得出来ずにmaxWait( > 0)以上時間が経過した場 合。

restore

public void restore(Wrapper wrapper)
             throws java.lang.IllegalArgumentException
取得したインスタンスを1つ、プールへ戻します。もし、このプールから取得 したインスタンスでは無い場合、IllegalArgumentExceptionがthrowされます。
パラメータ:
wrapper - 目的objectを保持するWrapperのインスタンス
例外:
java.lang.IllegalArgumentException - このプールから取得したインスタンス以外を戻そうとした場合

grow

public boolean grow()
プールするインスタンスを1つ増やします。maxSizeより多くは増やしません。 増加に成功するとtrueを戻します。
戻り値:
増加に成功した場合true

shrink

public boolean shrink()
プールするインスタンスを1つ減らします。minSize未満には減らしません。 減少に成功するとtrueを戻します。
戻り値:
減少に成功した場合はtrue

dispose

public void dispose(Wrapper wrapper)
             throws java.lang.IllegalArgumentException
取得したインスタンスを1つ破棄します。このプールから取得したインスタ ンスではない場合、IllegalArgumentExceptionがthrowされます。
パラメータ:
wrapper - 破棄するインスタンス
例外:
java.lang.IllegalArgumentException - このプールから取得したインスタンス以外を破棄しようとした場合