1

restlet のサイト (最初のアプリケーション) に投稿された例と同様のことをしたいと思います- 1 つの違いがあります:

インターフェイスを使用して、プリミティブ型を使用せずにデータをストリーミングしたい。

クライアントとサーバーの間のある種のインターフェースを定義し、それらの間でデータをストリーミングし、restlet ハンドルがデータをシームレスに送信できるようにしたいと考えています。

私が考えていることの例:

interface Streaming {
  InputStream startStream(String streamId);
}

クライアントが呼び出しを呼び出すと、入力ストリームからの読み取りが開始されます。サーバーは呼び出しを受信し、入力ストリーム (たとえば、ビデオ ファイルや単なる生データ) を作成してストリームの提供を開始します。Restlet はサーバー側で入力ストリームから読み取り、クライアント側で入力ストリームとしてデータを提供する必要があります。

どうすればこれを達成できますか?コードサンプルまたはリンクは素晴らしいでしょう。ありがとう。

4

2 に答える 2

0

これで問題が完全に解決されるかどうかはわかりませんが、ReadableRepresentation とパイプを使用してクライアントにデータをストリーミングするスレッドを作成する方法があります。

パイプを作成します。

Pipe pipe = Pipe.open();

次のような表現を作成します。

ReadableRepresentation r = new ReadableRepresentation(pipe.source(), mediatype);

次のように、バイトのバッチをパイプに書き込む別のスレッドを開始します。

pipe.sink().write(ByteBuffer.wrap(someBytes));

表現をクライアントに返します。

于 2013-11-06T09:29:45.330 に答える