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