|
|||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectwoolpack.misc.MiscUtils
public final class MiscUtils
多雑な部品のユーティリティです。
メソッドの概要 | ||
---|---|---|
static
|
fnRunnable(Fn<? super C,?,? extends RuntimeException> fn,
C c)
Fn に委譲するRunnable を生成します。 |
|
static
|
lapTime(Fn<? super C,? extends R,? extends E> fn,
Fn<? super Long,?,? extends E> reportFn)
委譲先の実行時間を測定する関数を生成します。 |
|
static
|
loadBalancer(Fn<Object,? extends Fn<? super C,? extends R,? extends E>,? extends E1> factory,
int length)
複数のスレッドで同時に実行することができない Fn を、
複数生成することにより並行に実行するようにみせる関数を生成します。 |
|
static
|
retry(Fn<? super C,? extends R,? extends Exception> fn,
int count)
成功するまでリトライする関数を生成します。 |
|
static
|
retry(Fn<? super C,? extends R,? extends Exception> fn,
int count,
Fn<? super Exception,?,? extends E> errorFn,
Fn<? super Exception,? extends R,? extends E> finalFn)
成功するまでリトライする関数を生成します。 |
|
static
|
runnableFn(Runnable runnable)
Runnable に委譲する関数を生成します。 |
|
static
|
sleep(long sleepMillis)
スリープする関数を生成します。 |
|
static
|
switchNearLocale(Map<? super Locale,? extends R> map,
Fn<? super Locale,? extends R,? extends E> defaultFn)
一覧から指定されたロケールに最も近いロケールをキーとして値を返す関数を生成します。 |
|
static
|
threadLocal(ThreadLocal<? extends R> threadLocal)
ThreadLocal.get() を返す関数を生成します。 |
|
static
|
tryLocales(Fn<? super String,? extends R,? extends Exception> fn,
ThreadLocal<Locale> threadLocal)
Locale を元に id に接尾辞を付加して成功するまで委譲する関数を生成します。 |
|
static
|
tryLocales(Fn<? super String,? extends R,? extends Exception> fn,
ThreadLocal<Locale> threadLocal,
Fn<? super Exception,?,? extends E> errorFn,
Fn<? super Exception,? extends R,? extends E> finalFn)
Locale を元に id に接尾辞を付加して成功するまで委譲する関数を生成します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
メソッドの詳細 |
---|
public static <C,R,E extends Exception> Fn<C,R,E> lapTime(Fn<? super C,? extends R,? extends E> fn, Fn<? super Long,?,? extends E> reportFn)
Fn
のComposite。
C
- R
- E
- fn
- 委譲先。reportFn
- 結果の送付先。
public static <C,R,E extends Exception,E1 extends Exception> Fn<C,R,E> loadBalancer(Fn<Object,? extends Fn<? super C,? extends R,? extends E>,? extends E1> factory, int length) throws Exception
Fn
を、
複数生成することにより並行に実行するようにみせる関数を生成します。
Fn
のCompositeを生成して使用するBuilder。
C
- R
- E
- E1
- factory
- 複数のスレッドで同時に実行できないFn
のファクトリ。length
- 並行実行数。
IllegalArgumentException
- length がゼロ以下の場合。
Exception
- Fn
の生成に失敗した場合。public static <C> Runnable fnRunnable(Fn<? super C,?,? extends RuntimeException> fn, C c)
Fn
に委譲するRunnable
を生成します。
Fn
のAdapter。
C
- fn
- 委譲先。c
- 委譲先に渡す値。
public static <R> Fn<Object,R,RuntimeException> runnableFn(Runnable runnable)
Runnable
に委譲する関数を生成します。
Fn.exec(Object)
は null を返します。
Runnable
のAdapter。
R
- runnable
- ランナブル。
public static <C,R> Fn<C,R,InterruptedException> sleep(long sleepMillis)
C
- R
- sleepMillis
- スリープ時間。
public static <R,E extends Exception> Fn<Locale,R,E> switchNearLocale(Map<? super Locale,? extends R> map, Fn<? super Locale,? extends R,? extends E> defaultFn)
Fn
のProxy。
R
- E
- map
- マップ。defaultFn
- 引数に対応する値が null の場合の委譲先。
public static <R> Fn<Object,R,RuntimeException> threadLocal(ThreadLocal<? extends R> threadLocal)
ThreadLocal.get()
を返す関数を生成します。
ThreadLocal
のAdapter。
R
- threadLocal
- スレッドローカル。
public static <R,E extends Exception> Fn<String,R,E> tryLocales(Fn<? super String,? extends R,? extends Exception> fn, ThreadLocal<Locale> threadLocal, Fn<? super Exception,?,? extends E> errorFn, Fn<? super Exception,? extends R,? extends E> finalFn)
Locale
を元に id に接尾辞を付加して成功するまで委譲する関数を生成します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
Fn
のComposite、Fn
のProxy。
R
- E
- fn
- 委譲先。threadLocal
- 現在のスレッドのLocale
を保持するスレッドローカル。errorFn
- エラー発生時の委譲先。finalFn
- 全て成功しなかった場合の委譲先。
public static <R> Fn<String,R,IllegalStateException> tryLocales(Fn<? super String,? extends R,? extends Exception> fn, ThreadLocal<Locale> threadLocal)
Locale
を元に id に接尾辞を付加して成功するまで委譲する関数を生成します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
全て成功しなかった場合はIllegalStateException
を投げます。
R
- fn
- 委譲先。threadLocal
- 現在のスレッドのLocale
を保持するスレッドローカル。
tryLocales(Fn, ThreadLocal, Fn, Fn)
public static <C,R,E extends Exception> Fn<C,R,E> retry(Fn<? super C,? extends R,? extends Exception> fn, int count, Fn<? super Exception,?,? extends E> errorFn, Fn<? super Exception,? extends R,? extends E> finalFn)
Fn
のComposite。
C
- R
- E
- fn
- 委譲先。count
- リトライ回数。errorFn
- エラー発生時の委譲先。finalFn
- 全て成功しなかった場合の委譲先。
public static <C,R> Fn<C,R,IllegalStateException> retry(Fn<? super C,? extends R,? extends Exception> fn, int count)
IllegalStateException
を投げます。
C
- R
- fn
- 委譲先。count
- リトライ回数。
retry(Fn, int, Fn, Fn)
|
|||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |