Skip to main content
MFA プッシュ通知のポーリング セッションを管理するための制御インターフェースです。 このインターフェースは、MFA プッシュチャレンジが承認されたかどうかを確認する長時間実行のポーリング ループについて、開始、停止、状態の確認を行うための命令型メソッドを提供します。
Example
export interface MfaPushPollingControl {
  /**
   * ポーリング処理を即座に停止します。
   *
   * - スケジュール済みのタイマーまたは保留中のリクエストをキャンセルします。
   * - 停止後、`isRunning()` は `false` を返します。
   * - 複数回呼び出しても安全です。2回目以降の呼び出しは効果がありません。
   *
   * @example
   * ```ts
   * const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
   * control.startPolling();
   *
   * // 後でユーザーがキャンセルする場合:
   * control.stopPolling();
   * ```
   */
  stopPolling: () => void;

  /**
   * ポーリング処理を開始または再開します。
   *
   * - ポーリングがすでにアクティブな場合、再度呼び出しても効果がありません。
   * - 以前に停止していた場合、呼び出すとポーリングループが再開されます。
   *
   * @example
   * ```ts
   * control.startPolling(); // MFA プッシュチャレンジの確認を開始する
   * ```
   */
  startPolling: () => void;

  /**
   * ポーリング処理が現在実行中かどうかを示します。
   *
   * - ポーリングがアクティブでキャンセルされていない場合、`true` を返します。
   * - ポーリングが停止または完了している場合、`false` を返します。
   *
   * @example
   * ```ts
   * if (control.isRunning()) {
   *   console.log('ポーリング進行中...');
   * } else {
   *   console.log('ポーリングは停止または完了しています。');
   * }
   * ```
   */
  isRunning: () => boolean;
}

プロパティ

isRunning
boolean
ポーリング処理が現在実行中かどうかを示します。
Example
if (control.isRunning()) {
  console.log('Polling in progress...');
} else {
  console.log('Polling is stopped or completed.');
}
startPolling
void
ポーリング処理を開始または再開します。
  • ポーリングがすでに実行中の場合、再度呼び出しても効果はありません。
  • 以前に停止していた場合、これを呼び出すとポーリング ループが再開されます。
Example
control.startPolling(); // MFA プッシュチャレンジの確認を開始
stopPolling
void
ポーリング処理を直ちに停止します。
  • スケジュールされたタイマーまたは保留中のリクエストをキャンセルします。
  • 停止すると、isRunning()false を返します。
  • 複数回呼び出しても安全です。2 回目以降の呼び出しには効果がありません。
Example
const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
control.startPolling();

// 後で、ユーザーがキャンセルした場合:
control.stopPolling();