クラスStreamHandler
- 直系の既知のサブクラス:
ConsoleHandler,FileHandler,SocketHandler
Handler。
これは主に、他のロギングHandlersの実装に使用されるベース・クラスまたはサポート・クラスとして意図されています。
LogRecordsは、指定されたjava.io.OutputStreamに公開されます。
構成: デフォルトでは、各StreamHandlerは、次のLogManager構成プロパティを使用して初期化されます。<handler-name>は、ハンドラの完全修飾クラス名を示します。 プロパティが未定義である 合(または無効な値を持つ 合)、指定されたデフォルト値が使用されます。
- <handler-name>.levelは、
Handler(デフォルトはLevel.INFOです)のデフォルト・レベルを指定します。 - <handler-name>.filterは、(デフォルトは
Filterではありません)を使用するFilterクラスの名前を指定します。 - <handler-name>.formatterは、(デフォルトは
java.util.logging.SimpleFormatterです)を使用するFormatterクラスの名前を指定します。 - <handler-name>.encodingは使用する文字セット・エンコーディングの名前を指定します(デフォルトは、デフォルト・プラットフォー のエンコーディング)。
たとえば、StreamHandlerのプロパティは次のようになります。
- java.util.logging.StreamHandler.level=INFO
- java.util.logging.StreamHandler.formatter=java.util.logging.SimpleFormatter
カスタ ・ハンドラ(例: com.foo.MyHandler)の 合、プロパティは次のようになります。
- com.foo.MyHandler.level=INFO
- com.foo.MyHandler.formatter=java.util.logging.SimpleFormatter
- 導入されたバージョン:
- 1.4
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明現在の出力ストリー なしで、StreamHandlerを作成します。StreamHandler(OutputStream out, Formatter formatter) 指定されたFormatterおよび出力ストリー でStreamHandlerを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明voidclose()現在の出力ストリー を閉じます。voidflush()すべてのバッファされたメッセージをフラッシュします。booleanisLoggable(LogRecord record) このHandlerが特定のLogRecordを実際にログに記録するかどうかを確認します。voidLogRecordを書式設定して公開します。voidsetEncoding(String encoding) (または変更)に、このHandlerで使用される文字エンコーディングを設定します。protected void出力ストリー を変更します。クラスjava.util.logging.Handlerで宣言されたメソッド
getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel
-
コンストラクタの詳細
-
StreamHandler
public StreamHandler()現在の出力ストリー なしで、StreamHandlerを作成します。 -
StreamHandler
public StreamHandler(OutputStream out, Formatter formatter) 指定されたFormatterおよび出力ストリー でStreamHandlerを作成します。- パラメータ:
out- ターゲット出力ストリーformatter- 出力のフォーマットに使用されるFormatter
-
-
メソッドの詳細
-
setOutputStream
protected void setOutputStream(OutputStream out) 出力ストリー を変更します。現在の出力ストリー がある 合、
Formatterの末尾文字列が書き込まれ、ストリー がフラッシュされてクローズされます。 次に、その出力ストリー が新しい出力ストリー で置き換えられます。- パラメータ:
out- 新しい出力ストリー 。 nullは不可。
-
setEncoding
public void setEncoding(String encoding) throws UnsupportedEncodingException (または変更)に、このHandlerで使用される文字エンコーディングを設定します。エンコーディングは、
LogRecordsがHandlerに書き込まれる前に設定する必要があります。- オーバーライド:
setEncoding、クラスHandler- パラメータ:
encoding- サポートされる文字エンコーディングの名前。 nullも可能。これはデフォルトのプラットフォー ・エンコーディングを示す- スロー:
UnsupportedEncodingException- 指定された文字エンコーディングがサポートされていない 合。
-
publish
public void publish(LogRecord record) LogRecordを書式設定して公開します。StreamHandlerは、最初にOutputStreamがあるかどうか、および指定されたLogRecordに少なくとも必要なログ・レベルがあるかどうかを確認します。 そうでない 合、これは何の通知もなく戻ります。 その 合、関連するFilterをコールして、レコードを公開する必要があるかどうかを確認します。 その 合は、Formatterをコールしてレコードをフォーマットし、結果を現在の出力ストリー に書き込みます。これが特定の
OutputStreamに書き込まれる最初のLogRecordである 合、Formatterの"ヘッド"文字列は、LogRecordが書き込まれる前にストリー に書き込まれます。 -
isLoggable
public boolean isLoggable(LogRecord record) このHandlerが特定のLogRecordを実際にログに記録するかどうかを確認します。このメソッドは、
LogRecordに適切なレベルがあるかどうか、およびFilterを満たすかどうかをチェックします。 これは、出力ストリー がま 割り当てられていないか、LogRecordがnullである 合も、falseを返します。- オーバーライド:
isLoggable、クラスHandler- パラメータ:
record-LogRecord(nullの 合がある)。- 戻り値:
LogRecordがログに記録される 合はtrue。
-
flush
-
close
-