次の方法で共有


MethodDispatcherBase クラス

  • java.lang.Object
    • MethodDispatcher
      • microsoft.servicefabric.services.remoting.builder.MethodDispatcherBase

public class MethodDispatcherBase implements MethodDispatcher

リモート処理コード ジェネレーターによって使用される基本クラス。クライアントからリモート オブジェクトの適切なインターフェイスとメソッドに要求をディスパッチする型を生成します。

メソッドの概要

修飾子と型 メソッドと説明
CompletableFuture<Object> continueWith(CompletableFuture<?> future)

内部 - サービス リモート処理によって使用されます

<TRetval> CompletableFuture<Object> continueWithResult(int methodId, CompletableFuture<TRetval> future)

内部 - サービス リモート処理によって使用されます

abstract Object createResponseBody(int methodId, Object returnValue)

このメソッドは、リモート オブジェクトにメソッドをディスパッチした結果として、指定された戻り値から応答を作成するために、生成されたメソッド ディスパッチャーによって実装されます。

abstract Object createResponseMessageBody(Object responseMessageBodyValue)

このメソッドは、生成されたメソッドによって実装され、応答メッセージを作成します。

void dispatch(Object objectImplementation, int methodId, Object requestMsgBody)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に一方向のメッセージをディスパッチするために使用されます。

CompletableFuture<Object> dispatchAsync(Object objectImplementation, int methodId, Object requestMsgBody, CancellationToken cancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

int getInterfaceId()

インターフェイス ID は、リモート処理インターフェイスを識別するために使用されます。

String getMethodName(int methodId)
abstract Object getRequestMessageBodyValue(Object requestMessageBody)

このメソッドは、要求メッセージを取得するために生成されたメソッド ディスパッチャーによって実装されます。

void initialize(int interfaceId, Map<Integer, String> methodNameMap)
abstract void onDispatch(int methodId, Object remotedObject, Object requestBody)

このメソッドは、リモート オブジェクトによって実装されるインターフェイスの指定された methodId に一方向のメッセージをディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

abstract CompletableFuture<Object> onDispatchAsync(int methodId, Object remotedObject, Object requestBody, CancellationToken cancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

メソッドの詳細

continueWith

protected CompletableFuture continueWith(CompletableFuture future)

内部 - サービス リモート処理によって使用されます

パラメーター:

future - 継続の将来

戻り値:

java.util.concurrent.CompletableFuture未処理の操作を表す 。

continueWithResult

protected CompletableFuture continueWithResult(int methodId, CompletableFuture future)

内部 - サービス リモート処理によって使用されます

パラメーター:

methodId - メソッド ID
future - 継続の将来

戻り値:

java.util.concurrent.CompletableFuture未処理の操作を表す 。

createResponseBody

protected abstract Object createResponseBody(int methodId, Object returnValue)

このメソッドは、リモート オブジェクトにメソッドをディスパッチした結果として、指定された戻り値から応答を作成するために、生成されたメソッド ディスパッチャーによって実装されます。

パラメーター:

methodId - メソッドの ID。
returnValue - メソッドから返される値。

戻り値:

Objectクライアントに返される応答本文を表す 。

createResponseMessageBody

protected abstract Object createResponseMessageBody(Object responseMessageBodyValue)

このメソッドは、生成されたメソッドによって実装され、応答メッセージを作成します。

パラメーター:

responseMessageBodyValue - 応答メッセージ本文

戻り値:

Object respnse messge 本文を表す 。

dispatch

public void dispatch(Object objectImplementation, int methodId, Object requestMsgBody)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に一方向のメッセージをディスパッチするために使用されます。

上書き:

MethodDispatcherBase.dispatch(Object objectImplementation, int methodId, Object requestMsgBody)

パラメーター:

objectImplementation - remoted オブジェクトの実装。
methodId - remoted オブジェクトによって実装されるインターフェイスの methodId。
requestMsgBody - メッセージ本文。

dispatchAsync

public CompletableFuture dispatchAsync(Object objectImplementation, int methodId, Object requestMsgBody, CancellationToken cancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

上書き:

MethodDispatcherBase.dispatchAsync(Object objectImplementation, int methodId, Object requestMsgBody, CancellationToken cancellationToken)

パラメーター:

objectImplementation - リモート オブジェクト インスタンス
methodId - メソッドの id
requestMsgBody - 要求本文
cancellationToken

戻り値:

java.util.concurrent.CompletableFuture未処理の操作を表す 。 タスクの結果は、 メソッドからの戻り値です。

getInterfaceId

public int getInterfaceId()

インターフェイス ID は、リモート処理インターフェイスを識別するために使用されます。

上書き:

MethodDispatcherBase.getInterfaceId()

戻り値:

インターフェイス ID。

getMethodName

public String getMethodName(int methodId)

上書き:

MethodDispatcherBase.getMethodName(int methodId)

パラメーター:

methodId

getRequestMessageBodyValue

protected abstract Object getRequestMessageBodyValue(Object requestMessageBody)

このメソッドは、要求メッセージを取得するために生成されたメソッド ディスパッチャーによって実装されます。

パラメーター:

requestMessageBody - 要求メッセージ本文。

戻り値:

Object要求本文を表す 。

initialize

public void initialize(int interfaceId, Map methodNameMap)

パラメーター:

interfaceId
methodNameMap

onDispatch

protected abstract void onDispatch(int methodId, Object remotedObject, Object requestBody)

このメソッドは、リモート オブジェクトによって実装されるインターフェイスの指定された methodId に一方向のメッセージをディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

パラメーター:

methodId - メソッドの ID。
remotedObject - リモート オブジェクト インスタンス。
requestBody - メッセージ本文

onDispatchAsync

protected abstract CompletableFuture onDispatchAsync(int methodId, Object remotedObject, Object requestBody, CancellationToken cancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために、生成されたメソッド ディスパッチャーによって実装されます。

パラメーター:

methodId - メソッドの id
remotedObject - リモート オブジェクト インスタンス
requestBody - 要求本文
cancellationToken - 非同期要求を取り消すキャンセル トークン。

戻り値:

java.util.concurrent.CompletableFuture未処理の操作を表す 。 タスクの結果は、 メソッドからの戻り値です。

適用対象