|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjava.util.logging.Handler
java.util.logging.MemoryHandler
public class MemoryHandler
メモリの循環バッファの要求をバッファ処理する Handler です。
通常、この Handler は着信する LogRecord をそのメモリバッファに格納するだけで、以前のレコードを破棄します。このバッファリングは、非常に安上がりでフォーマット処理のコストがかからないようにします。特定のトリガの条件の下で、MemoryHandler は現在のバッファの内容をターゲット Handler にプッシュして、通常はこのハンドラがその内容を外部に通知します。
バッファのプッシュをトリガモデルには、主につぎの 3 つがあります。
構成: デフォルトで、各 MemoryHandler は次に示す LogManager 構成プロパティを使用して初期化されます。プロパティが未定義の場合 (または無効な値を持つ場合)、指定されたデフォルトの値が使用されます。デフォルト値が未定義の場合、RuntimeException がスローされます。
コンストラクタの概要 | |
---|---|
MemoryHandler()
MemoryHandler を作成して LogManager の構成プロパティに基づき構成します。 |
|
MemoryHandler(Handler target,
int size,
Level pushLevel)
MemoryHandler を作成します。 |
メソッドの概要 | |
---|---|
void |
close()
Handler を閉じて関連するすべてのリソースを解放します。 |
void |
flush()
ターゲット Handler をフラッシュします。 |
Level |
getPushLevel()
pushLevel を返します。 |
boolean |
isLoggable(LogRecord record)
この Handler が、指定された LogRecord を内部バッファに実際にロギングするかどうかを調べます。 |
void |
publish(LogRecord record)
内部バッファに LogRecord を格納します。 |
void |
push()
任意のバッファ処理された出力をターゲット Handler にプッシュします。 |
void |
setPushLevel(Level newLevel)
pushLevel を設定します。 |
クラス java.util.logging.Handler から継承されたメソッド |
---|
getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setEncoding, setErrorManager, setFilter, setFormatter, setLevel |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public MemoryHandler()
public MemoryHandler(Handler target, int size, Level pushLevel)
MemoryHandler は、指定された pushLevel 引数とバッファサイズ引数が使用されないかぎり、LogManager プロパティまたはそのデフォルト値に基づいて構成されます。
target
- 出力を通知する Handlersize
- バッファ処理するログレコードの数 (ゼロより大きくなければならない)pushLevel
- プッシュを行うメッセージレベル
IllegalArgumentException
- サイズが 0 以下であるメソッドの詳細 |
---|
public void publish(LogRecord record)
Filter がある場合、その isLoggable メソッドが呼び出され、指定されたログレコードがログを取ることが可能であるかどうかを調べます。可能でない場合、そのまま復帰します。可能である場合、指定されたレコードが内部循環バッファにコピーされます。次に、レコードのレベルプロパティが pushLevel と比較されます。指定されたレベルが pushLevel より大きいかまたは等しい場合、push が呼び出され、バッファ処理されたすべてのレコードをターゲット出力 Handler に書き込みます。
Handler
内の publish
record
- ログイベントの説明。null レコードは単に無視されるだけで、通知は行われないpublic void push()
バッファがクリアされます。
public void flush()
MemoryHandler バッファの現在の内容は書き出されないことに注意してください。書き出すには push が必要になります。
Handler
内の flush
public void close() throws SecurityException
Handler
内の close
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control")) を持たない場合public void setPushLevel(Level newLevel) throws SecurityException
newLevel
- pushLevel の新しい値
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control")) を持たない場合public Level getPushLevel()
public boolean isLoggable(LogRecord record)
このメソッドは LogRecord が適切なレベルを持っているかどうか、およびすべての Filter を満たしているかどうかを調べます。ただし、LogRecord によりバッファの内容が「プッシュ」されるかは調べません。LogRecord が Null の場合、false を返します。
Handler
内の isLoggable
record
- LogRecord
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。