|
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 内の publishrecord - ログイベントの説明。null レコードは単に無視されるだけで、通知は行われないpublic void push()
バッファがクリアされます。
public void flush()
MemoryHandler バッファの現在の内容は書き出されないことに注意してください。書き出すには push が必要になります。
Handler 内の flush
public void close()
throws SecurityException
Handler 内の closeSecurityException - セキュリティマネージャが存在し、呼び出し元が 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 内の isLoggablerecord - 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 も参照してください。