public abstract class AbstractRefreshableTargetSource extends ObjectSE implements TargetSource, Refreshable
TargetSource 実装。サブクラスは、リフレッシュが必要かどうか、および新しいターゲットオブジェクトを提供する必要があるかどうかを決定できます。 リフレッシュステータスを明示的に制御できるようにするために、Refreshable インターフェースを実装します。
requiresRefresh(), freshTarget()| 修飾子と型 | フィールドと説明 |
|---|---|
protected Log | logger サブクラスで利用可能なロガー |
protected ObjectSE | targetObject |
| コンストラクターと説明 |
|---|
AbstractRefreshableTargetSource() |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected abstract ObjectSE | freshTarget() 新しいターゲットオブジェクトを取得します。 |
long | getLastRefreshTime() 最後に実際のリフレッシュが行われた時刻を(タイムスタンプとして)返します。 |
long | getRefreshCount() 起動後の実際のリフレッシュ回数を返します。 |
ObjectSE | getTarget() ターゲットインスタンスを返します。 |
ClassSE<?> | getTargetClass() この TargetSource によって返されるターゲットの型を返します。 |
boolean | isStatic() 静的ではありません。 |
void | refresh() 基になるターゲットオブジェクトをリフレッシュします。 |
void | releaseTarget(ObjectSE object) ターゲットを解放する必要はありません。 |
protected boolean | requiresRefresh() リフレッシュが必要かどうかを判断します。 |
void | setRefreshCheckDelay(long refreshCheckDelay) リフレッシュチェック間の遅延をミリ秒単位で設定します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEprotected final Log logger
public void setRefreshCheckDelay(long refreshCheckDelay)
requiresRefresh() が true を返す場合にのみ、実際のリフレッシュが行われることに注意してください。
public ClassSE<?> getTargetClass()
TargetSourceTargetSource によって返されるターゲットの型を返します。null を返すことができますが、TargetSource の特定の使用箇所は、事前定義されたターゲットクラスでのみ機能する場合があります。
TargetClassAware の getTargetClass TargetSource の getTargetClass TargetSource によって返されるターゲットの型 public boolean isStatic()
TargetSource の isStatic true (ターゲットが不変の場合)TargetSource.getTarget()@Nullable public final ObjectSE getTarget()
TargetSourceTargetSource の getTarget null public void releaseTarget(ObjectSE object)
TargetSource の releaseTarget object - TargetSource.getTarget() の呼び出しから取得したオブジェクト public final void refresh()
RefreshableRefreshable の refresh public long getRefreshCount()
RefreshableRefreshable の getRefreshCount public long getLastRefreshTime()
RefreshableRefreshable の getLastRefreshTime protected boolean requiresRefresh()
デフォルトの実装は常に true を返し、遅延が経過するたびにリフレッシュをトリガーします。基になるターゲットリソースを適切にチェックして、サブクラスによってオーバーライドされます。
protected abstract ObjectSE freshTarget()
リフレッシュが必要であることがリフレッシュチェックで検出された場合(つまり、requiresRefresh() が true を返した場合)にのみ呼び出されます。