- 直系の既知のサブクラス:
- ConsoleHandler,- FileHandler,- SocketHandler
public class StreamHandler extends Handler
Handlerです。
 
 これは、主としてほかのログHandlerの実装に使用される基底クラスまたはサポート・クラスとして使用されます。
 
 LogRecordは指定されたjava.io.OutputStreamに通知されます。
 
 構成: デフォルトで各StreamHandlerは次のLogManager構成プロパティを使用して初期化されます。ここで<handler-name>はハンドラの完全修飾クラス名を示します。 プロパティが未定義である場合(または無効な値を持つ場合)、指定されたデフォルト値が使用されます。 
 
-    <handler-name>.levelはHandlerのデフォルト・レベルを指定します(デフォルトはLevel.INFO)。
-    <handler-name>.filterは使用するFilterクラスの名前を指定します(デフォルトはFilterなし)。
-    <handler-name>.formatterは使用するFormatterクラスの名前を指定します(デフォルトはjava.util.logging.SimpleFormatter)。
- <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を作成します。StreamHandler(OutputStream out, Formatter formatter)指定されたFormatterと出力ストリームを持つStreamHandlerを作成します。
- 
メソッドのサマリー修飾子と型 メソッド 説明 voidclose()現在の出力ストリームを閉じます。voidflush()すべてのバッファされたメッセージをフラッシュします。booleanisLoggable(LogRecord record)このHandlerが、指定されたLogRecordを実際にロギングするかどうかを調べます。voidpublish(LogRecord record)LogRecordをフォーマットして発行します。voidsetEncoding(String encoding)このHandlerが使用する文字エンコーディングを設定または変更します。protected voidsetOutputStream(OutputStream out)出力ストリームを変更します。クラス java.util.logging.Handlerで宣言されたメソッドgetEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel
- 
コンストラクタの詳細- 
StreamHandlerpublic StreamHandler()現在の出力ストリームを持たないStreamHandlerを作成します。
- 
StreamHandlerpublic StreamHandler(OutputStream out, Formatter formatter)指定されたFormatterと出力ストリームを持つStreamHandlerを作成します。- パラメータ:
- out- ターゲット出力ストリーム
- formatter- 出力のフォーマットに使用されるFormatter
 
 
- 
- 
メソッドの詳細- 
setOutputStreamprotected void setOutputStream(OutputStream out) throws SecurityException出力ストリームを変更します。現在の出力ストリームが存在する場合、 Formatterの末尾文字列が書き込まれ、ストリームがフラッシュおよびクローズされます。 次に、その出力ストリームが新しい出力ストリームで置き換えられます。- パラメータ:
- out- 新しい出力ストリーム。 nullは不可。
- 例外:
- SecurityException- セキュリティ・マネージャが存在する場合で、呼出し元が- LoggingPermission("control")を持っていない場合。
 
- 
setEncodingpublic void setEncoding(String encoding) throws SecurityException, UnsupportedEncodingExceptionこのHandlerが使用する文字エンコーディングを設定または変更します。エンコーディングは、 LogRecordがHandlerに書き込まれる前に設定してください。- オーバーライド:
- setEncoding、クラス:- Handler
- パラメータ:
- encoding- サポートされる文字エンコーディングの名前。 nullも可能。これはデフォルトのプラットフォーム・エンコーディングを示す
- 例外:
- SecurityException- セキュリティ・マネージャが存在する場合で、呼出し元が- LoggingPermission("control")を持っていない場合。
- UnsupportedEncodingException- 指定された文字エンコーディングがサポートされていない場合。
 
- 
publishpublic void publish(LogRecord record)LogRecordをフォーマットして発行します。StreamHandlerはまず、OutputStreamが存在するかどうかと、指定されたLogRecordのレベルが要求されるログ・レベル以上かどうかをチェックします。 そうでない場合、これは何の通知もなく戻ります。 そうである場合、これは、関連付けられた任意のFilterを呼び出すことで、そのレコードを発行すべきかどうかをチェックします。 そうである場合、Formatterを呼び出してレコードをフォーマットし、結果を現在の出力ストリームに書き込みます。これが指定された OutputStreamに書き込まれる最初のLogRecordの場合、LogRecordが書き込まれる前にFormatterの「先頭」の文字列がストリームに書き込まれます。
- 
isLoggablepublic boolean isLoggable(LogRecord record)このHandlerが、指定されたLogRecordを実際にロギングするかどうかを調べます。このメソッドは、 LogRecordのレベルが適切かどうか、およびそのレコードが任意のFilterを満足するかどうかをチェックします。 これは、出力ストリームがまだ割り当てられていないか、LogRecordがnullである場合も、falseを返します。- オーバーライド:
- isLoggable、クラス:- Handler
- パラメータ:
- record-- LogRecord(nullの場合がある)。
- 戻り値:
- LogRecordがログをとられる場合はtrue。
 
- 
flushpublic void flush()すべてのバッファされたメッセージをフラッシュします。
- 
closepublic void close() throws SecurityException現在の出力ストリームを閉じます。ストリームが閉じられる前に、 Formatterの「末尾」文字列がストリームに書き込まれます。 さらに、Formatterの「先頭」文字列がストリームにまだ書き込まれていない場合は、それが「末尾」文字列の前に書き込まれます。- 定義:
- close、クラス:- Handler
- 例外:
- SecurityException- セキュリティ・マネージャが存在する場合で、呼出し元がLoggingPermission("control")を持っていない場合。
 
 
-