Java Doc for MemoryHandler.java in  » 6.0-JDK-Core » Collections-Jar-Zip-Logging-regex » java » util » logging » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Home
Java Source Code / Java Documentation
1.6.0 JDK Core
2.6.0 JDK Modules
3.6.0 JDK Modules com.sun
4.6.0 JDK Modules com.sun.java
5.6.0 JDK Modules sun
6.6.0 JDK Platform
7.Ajax
8.Apache Harmony Java SE
9.Aspect oriented
10.Authentication Authorization
11.Blogger System
12.Build
13.Byte Code
14.Cache
15.Chart
16.Chat
17.Code Analyzer
18.Collaboration
19.Content Management System
20.Database Client
21.Database DBMS
22.Database JDBC Connection Pool
23.Database ORM
24.Development
25.EJB Server
26.ERP CRM Financial
27.ESB
28.Forum
29.Game
30.GIS
31.Graphic 3D
32.Graphic Library
33.Groupware
34.HTML Parser
35.IDE
36.IDE Eclipse
37.IDE Netbeans
38.Installer
39.Internationalization Localization
40.Inversion of Control
41.Issue Tracking
42.J2EE
43.J2ME
44.JBoss
45.JMS
46.JMX
47.Library
48.Mail Clients
49.Music
50.Net
51.Parser
52.PDF
53.Portal
54.Profiler
55.Project Management
56.Report
57.RSS RDF
58.Rule Engine
59.Science
60.Scripting
61.Search Engine
62.Security
63.Sevlet Container
64.Source Control
65.Swing Library
66.Template Engine
67.Test Coverage
68.Testing
69.UML
70.Web Crawler
71.Web Framework
72.Web Mail
73.Web Server
74.Web Services
75.Web Services apache cxf 2.2.6
76.Web Services AXIS2
77.Wiki Engine
78.Workflow Engines
79.XML
80.XML UI
Java Source Code / Java Documentation » 6.0 JDK Core » Collections Jar Zip Logging regex » java.util.logging 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   java.util.logging.Handler
      java.util.logging.MemoryHandler

MemoryHandler
public class MemoryHandler extends Handler (Code)
Handler that buffers requests in a circular buffer in memory.

Normally this Handler simply stores incoming LogRecords into its memory buffer and discards earlier records. This buffering is very cheap and avoids formatting costs. On certain trigger conditions, the MemoryHandler will push out its current buffer contents to a target Handler, which will typically publish them to the outside world.

There are three main models for triggering a push of the buffer:

  • An incoming LogRecord has a type that is greater than a pre-defined level, the pushLevel.
  • An external class calls the push method explicitly.
  • A subclass overrides the log method and scans each incoming LogRecord and calls push if a record matches some desired criteria.

Configuration: By default each MemoryHandler is initialized using the following LogManager configuration properties. If properties are not defined (or have invalid values) then the specified default values are used. If no default value is defined then a RuntimeException is thrown.

  • java.util.logging.MemoryHandler.level specifies the level for the Handler (defaults to Level.ALL).
  • java.util.logging.MemoryHandler.filter specifies the name of a Filter class to use (defaults to no Filter).
  • java.util.logging.MemoryHandler.size defines the buffer size (defaults to 1000).
  • java.util.logging.MemoryHandler.push defines the pushLevel (defaults to level.SEVERE).
  • java.util.logging.MemoryHandler.target specifies the name of the target Handler class. (no default).

version:
   1.32, 05/05/07
since:
   1.4


Field Summary
 intstartcount
    

Constructor Summary
public  MemoryHandler()
     Create a MemoryHandler and configure it based on LogManager configuration properties.
public  MemoryHandler(Handler target, int size, Level pushLevel)
     Create a MemoryHandler.

Method Summary
public  voidclose()
     Close the Handler and free all associated resources.
public  voidflush()
     Causes a flush on the target Handler.

Note that the current contents of the MemoryHandler buffer are not written out.

public synchronized  LevelgetPushLevel()
     Get the pushLevel.
public  booleanisLoggable(LogRecord record)
     Check if this Handler would actually log a given LogRecord into its internal buffer.

This method checks if the LogRecord has an appropriate level and whether it satisfies any Filter.

public synchronized  voidpublish(LogRecord record)
     Store a LogRecord in an internal buffer.

If there is a Filter, its isLoggable method is called to check if the given log record is loggable. If not we return.

public synchronized  voidpush()
     Push any buffered output to the target Handler.
public  voidsetPushLevel(Level newLevel)
     Set the pushLevel.

Field Detail
startcount
int startcount(Code)




Constructor Detail
MemoryHandler
public MemoryHandler()(Code)
Create a MemoryHandler and configure it based on LogManager configuration properties.



MemoryHandler
public MemoryHandler(Handler target, int size, Level pushLevel)(Code)
Create a MemoryHandler.

The MemoryHandler is configured based on LogManager properties (or their default values) except that the given pushLevel argument and buffer size argument are used.
Parameters:
  target - the Handler to which to publish output.
Parameters:
  size - the number of log records to buffer (must be greater than zero)
Parameters:
  pushLevel - message level to push on
throws:
  IllegalArgumentException - is size is <= 0





Method Detail
close
public void close() throws SecurityException(Code)
Close the Handler and free all associated resources. This will also close the target Handler.
exception:
  SecurityException - if a security manager exists and ifthe caller does not have LoggingPermission("control").



flush
public void flush()(Code)
Causes a flush on the target Handler.

Note that the current contents of the MemoryHandler buffer are not written out. That requires a "push".




getPushLevel
public synchronized Level getPushLevel()(Code)
Get the pushLevel. the value of the pushLevel



isLoggable
public boolean isLoggable(LogRecord record)(Code)
Check if this Handler would actually log a given LogRecord into its internal buffer.

This method checks if the LogRecord has an appropriate level and whether it satisfies any Filter. However it does not check whether the LogRecord would result in a "push" of the buffer contents. It will return false if the LogRecord is Null.


Parameters:
  record - a LogRecord true if the LogRecord would be logged.




publish
public synchronized void publish(LogRecord record)(Code)
Store a LogRecord in an internal buffer.

If there is a Filter, its isLoggable method is called to check if the given log record is loggable. If not we return. Otherwise the given record is copied into an internal circular buffer. Then the record's level property is compared with the pushLevel. If the given level is greater than or equal to the pushLevel then push is called to write all buffered records to the target output Handler.
Parameters:
  record - description of the log event. A null record issilently ignored and is not published




push
public synchronized void push()(Code)
Push any buffered output to the target Handler.

The buffer is then cleared.




setPushLevel
public void setPushLevel(Level newLevel) throws SecurityException(Code)
Set the pushLevel. After a LogRecord is copied into our internal buffer, if its level is greater than or equal to the pushLevel, then push will be called.
Parameters:
  newLevel - the new value of the pushLevel
exception:
  SecurityException - if a security manager exists and ifthe caller does not have LoggingPermission("control").



Fields inherited from java.util.logging.Handler
boolean sealed(Code)(Java Doc)

Methods inherited from java.util.logging.Handler
void checkAccess() throws SecurityException(Code)(Java Doc)
abstract public void close() throws SecurityException(Code)(Java Doc)
abstract public void flush()(Code)(Java Doc)
public String getEncoding()(Code)(Java Doc)
public ErrorManager getErrorManager()(Code)(Java Doc)
public Filter getFilter()(Code)(Java Doc)
public Formatter getFormatter()(Code)(Java Doc)
public synchronized Level getLevel()(Code)(Java Doc)
public boolean isLoggable(LogRecord record)(Code)(Java Doc)
abstract public void publish(LogRecord record)(Code)(Java Doc)
protected void reportError(String msg, Exception ex, int code)(Code)(Java Doc)
public void setEncoding(String encoding) throws SecurityException, java.io.UnsupportedEncodingException(Code)(Java Doc)
public void setErrorManager(ErrorManager em)(Code)(Java Doc)
public void setFilter(Filter newFilter) throws SecurityException(Code)(Java Doc)
public void setFormatter(Formatter newFormatter) throws SecurityException(Code)(Java Doc)
public synchronized void setLevel(Level newLevel) throws SecurityException(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.