MultiLineReceiver

public abstract class MultiLineReceiver
extends Object implements IShellOutputReceiver

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver


ソケットから取得した生データを String オブジェクトに変換する IShellOutputReceiver の基本実装。

また、文字列を行ごとに分割します。

このクラスを拡張するクラスは、新しい解析済み行が利用可能になったときにそれを受け取る processNewLines(String[]) を実装する必要があります。

概要

パブリック コンストラクタ

MultiLineReceiver()

パブリック メソッド

final void addOutput(byte[] data, int offset, int length)

新しいデータが利用可能になるたびに呼び出されます。

void done()

プロセスを終了します。

void flush()

プロセスの実行の終了時に呼び出されます(プロセスがキャンセルされた場合を除く)。

abstract void processNewLines(String[] lines)

リモート プロセスで新しい行が受信されたときに呼び出されます。

void setTrimLine(boolean trim)

トリムライン フラグを設定します。

パブリック コンストラクタ

MultiLineReceiver

public MultiLineReceiver ()

パブリック メソッド

addOutput

public final void addOutput (byte[] data, 
                int offset, 
                int length)

新しいデータが利用可能になるたびに呼び出されます。

パラメータ
data byte: 新しいデータ。

offset int: 新しいデータの開始オフセット。

length int: 新しいデータの長さ。

done

public void done ()

プロセスを終了します。これは、最後の行が processNewLines(String[]) を通過した後に呼び出されます。

フラッシュ

public void flush ()

プロセスの実行終了時に呼び出されます(プロセスがキャンセルされた場合を除く)。これにより、受信側はまだ処理されていないデータを終了してフラッシュできます。

processNewLines

public abstract void processNewLines (String[] lines)

リモート プロセスで新しい行が受信されたときに呼び出されます。

このメソッドに渡される行は、必ず完全な行であることが保証されます。

パラメータ
lines String: 新しい行を含む配列。

setTrimLine

public void setTrimLine (boolean trim)

トリムラインのフラグを設定します。

パラメータ
trim boolean: 行がトリミングされるかどうか。