インターフェース Candidate
- すべての既知の実装クラス:
AbstractCandidate
,DefaultCandidate
public interface Candidate
候補者がリーダー選出に参加するための契約を定義するインターフェース。コールバックメソッド
onGranted(Context)
および onRevoked(Context)
は、リーダーシップが付与および取り消されたときに呼び出されます。- 作成者:
- Patrick Peralta, Janne Valkealahti
メソッドのサマリー
メソッドの詳細
getRole
StringSE getRole()ロールを取得します。- 戻り値:
- この候補者が参加しているリーダーシップのロールの名前を示す文字列。同じ名前でシステムに存在する他の候補者はリーダーシップを争うでしょう
getId
onGranted
この候補者がリーダーに選出されたときに呼び出されるコールバックメソッド。実装では、バックグラウンドスレッドを起動してリーダーシップのロールを実行し、すぐに戻ることを選択できます。別のオプションは、実装がこのメソッドを呼び出すスレッドですべてのリーダーシップ作業を実行することです。後者の場合、メソッドはInterruptedException
SE をスローしてスレッドの割り込みに応答する必要があります。スレッドが中断されると、これは、この候補者がリーダーではなくなったことを示します。- パラメーター:
ctx
- リーダーシップの背景- 例外:
InterruptedExceptionSE
- この候補者がリーダーではなくなったとき
onRevoked
この候補者がリーダーでなくなったときに呼び出されるコールバックメソッド。実装は、これを使用して、リーダーシップ作業を実行するために使用されるすべてのリソース(スレッド、ネットワーク接続など)をシャットダウンする必要があります。- パラメーター:
ctx
- リーダーシップの背景