FIWARE Device Simulator ライブラリ¶
FIWARE Device Simulator ライブラリ は ./bin ディレクトリにあります。これは、以下のもので構成されています :
- メイン
./lib/fiwareDeviceSimulator.jsファイル。以下の機能を公開します :start(): これは、シミュレーション構成 JSON オブジェクトを取得し、次のイベントの通知をクライアントに返すEventEmitterのインスタンスを返します :token-request: 新しい認可トークンが要求されるたびに。このイベント発生の追加情報としてイベントオブジェクトは渡されませんtoken-response: 新しい認可トークンを受け取るたびに。渡されたイベントには次のプロパティが含まれます :-
expires_at: 有効期限
-
token-request-scheduled: 新しい認可トークンのリクエストがスケジュールされるたびに。渡されたイベントには、次のプロパティが含まれます :scheduled_at: 予定日
update-scheduled: 新しいエンティティ更新がスケジュールされるたびに。渡されたイベントには、次のプロパティが含まれます :schedule: スケジュールentity: 更新されるエンティティに関する情報attributes: 更新される属性
update-request: 新しいエンティティ更新がリクエストされるたびに。渡されたイベントには、次のプロパティが含まれます :request: 更新リクエストの詳細
update-response: 新しいエンティティ更新のレスポンスが受信されるたびに。渡されたイベントには、次のプロパティが含まれます :request: 更新リクエストの詳細response: 受信した更新のレスポンスのボディ
info: 一般的にシミュレーションの進化を知らせる情報イベント。渡されたイベントには、次のプロパティが含まれます :message: 情報メッセージ
progress-info: 実行中のシミュレーションに関する進捗情報。渡されたイベントには、次のプロパティが含まれます :updatesProcessed: 処理された更新の総数updatesRequested: 送信された更新リクエストの数delayedUpdateRequests: 遅延された更新リクエストの数errorUpdateRequests: 誤った更新リクエストの数elapsedTime: 実際の経過時間simulatedElapsedTime: 早送りシミュレーションの場合のシミュレーション時間updateJobs: スケジュールされた更新リクエストの配列clock: 早送りシミュレーションの場合に lolex によって返される、lolex NPM パッケージclock
error: エラーが発生するたびに。渡されたイベントには、次のプロパティが含まれます :error: エラーrequest: オプションの関連リクエスト。オプション
stop: シミュレーションが停止するたびに。このイベント・オカレンスの追加情報としてイベント・オブジェクトは渡されませんend: シミュレーションが終了するたびに。このイベント・オカレンスの追加情報としてイベントオブジェクトは渡されませんstop(): 現在実行中のシミュレーションがあれば停止し、stopイベントを発行します
./lib/validators/fiwareDeviceSimulatorValidator.jsファイル。以下の機能を公開します :validateConfiguration: シミュレーション構成オブジェクトを入力として非同期的に検証するとともに、シミュレーション構成オブジェクトが有効でない場合の問題に関する詳細情報とともにエラー・オブジェクトを渡して検証が完了すると呼び出されるコールバックを入力として受け取ります
./lib/errorsディレクトリに含まれます :fdsErrors.jsファイル。これには、デバイスのシミュレーションの実行中に送信される可能性のあるエラーが含まれます
./lib/interpolatorsディレクトリに含まれます :attributeFunctionInterpolator.jsファイル。attribute-function-interpolator属性値のリゾルバを実装していますdateIncrementInterpolator.jsファイル。date-increment-interpolator属性値のリゾルバを実装しています- The
linearInterpolator.jsfile. It implements thetime-linear-interpolatorattribute value resolver. multilinePositionInterpolator.jsファイル。multiline-position-interpolator属性値のリゾルバを実装していますrandomLinearInterpolator.jsファイル。time-random-linear-interpolator属性値のリゾルバを実装していますstepAfterInterpolator.jsファイル。time-step-after-interpolator属性値のリゾルバを実装していますstepBeforeInterpolator.jsファイル。time-step-before-interpolator属性値のリゾルバを実装していますtextRotationInterpolator.jsファイル。text-rotation-interpolator属性値のリゾルバを実装しています