Class LogAppenderBuffer
- java.lang.Object
-
- de.desy.mst.libs.framework.mstapp.logging.appender.LogAppenderBuffer
-
- All Implemented Interfaces:
IFlushable
,ILogAppenderKern
,ILogProvider
,IXmlBeschreibung
public class LogAppenderBuffer extends java.lang.Object implements ILogAppenderKern, IXmlBeschreibung, ILogProvider
Buffered Logging Eintraege ohne sie Tatsaechlich (selbst) rauszuschreiben.
ILogAppenderKern koennen sich registrieren lassen.
Folgende Events/Methoden werden delegiert:- void doLog(final LogMsg msg)
- doLog(final List
msgList) - void flush()
d.h alle Events aus ILogAppenderKern- Version:
- 1.0.0
- Author:
- ws
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_CAPACITY
static java.lang.String
NAME
-
Constructor Summary
Constructors Constructor Description LogAppenderBuffer()
LogAppenderBuffer(int capacity)
LogAppenderBuffer(int capacity, java.util.List<LogMsg> messages)
LogAppenderBuffer(java.util.List<LogMsg> messages)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
deregister(ILogAppenderKern logAppenderKern)
void
doFilter(HauptLogFilter wegWirfFilter)
aehnlich setFilter(filter), nur dass intern ein deep Clone verwended wird, der Buffer wird neu gefiltert und kuenftig erst mal immer sovoid
doLog(LogMsg msg)
logged eine LogMsgvoid
doLog(java.util.List<LogMsg> msgList)
logged viele LogMsg'esvoid
flush()
schreibt (so vorhanden) den Puffer rausorg.w3c.dom.Element
getBeschreibungAsElement(org.w3c.dom.Document document)
int
getCapacity()
Puffer Groesse, immer > 0int
getCapacityDefault()
int
getCapacityMaximum()
int
getCapacityMinimum()
int
getCapacityRiskyLarge()
HauptLogFilter
getFilterClone()
nicht den Originalfilter, also haben Aenderungen nur einen effekt wenn man explizit doFilter(filter) aufruftLogMsg
getLastMessage()
LogMsg
getMessage(int index)
java.util.List<LogMsg>
getMessages()
int
getSize()
java.lang.String
getXMLBeschreibung(int nTabs)
boolean
isRegistered(ILogAppenderKern appender)
boolean
register(ILogAppenderKern logAppenderKern)
void
registerPreference(IPrefManager prefMgr, IPreferences parent)
void
reloadAllData()
versucht die Daten frisch zu ladenvoid
setCapacity(int capacity)
Puffer Groesse, wird automatisch zwischen min und max gehalten-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.desy.mst.libs.framework.mstapp.logging.ILogProvider
toString
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
- See Also:
- Constant Field Values
-
DEFAULT_CAPACITY
public static final int DEFAULT_CAPACITY
- See Also:
- Constant Field Values
-
-
Method Detail
-
doLog
public void doLog(LogMsg msg)
Description copied from interface:ILogAppenderKern
logged eine LogMsg- Specified by:
doLog
in interfaceILogAppenderKern
-
doLog
public void doLog(java.util.List<LogMsg> msgList)
Description copied from interface:ILogAppenderKern
logged viele LogMsg'es- Specified by:
doLog
in interfaceILogAppenderKern
-
flush
public void flush()
Description copied from interface:IFlushable
schreibt (so vorhanden) den Puffer raus- Specified by:
flush
in interfaceIFlushable
-
getBeschreibungAsElement
public org.w3c.dom.Element getBeschreibungAsElement(org.w3c.dom.Document document)
- Specified by:
getBeschreibungAsElement
in interfaceIXmlBeschreibung
- Parameters:
document
- (may be null, soll intern nicht geaendert werden, dient lediglich zur Herstellung der Nodes)- Returns:
- liefert einen DOM Node als Selbstbeschreibung
-
getXMLBeschreibung
public java.lang.String getXMLBeschreibung(int nTabs)
- Specified by:
getXMLBeschreibung
in interfaceIXmlBeschreibung
- Parameters:
nTabs
- >= 0, Tabs als Zeilenpraefix, damit geschachtelte Objekte gut aussehen- Returns:
- Selbstbeschreibung des Objektes in wohlgeformter XML
-
register
public boolean register(ILogAppenderKern logAppenderKern)
- Specified by:
register
in interfaceILogProvider
- Parameters:
logAppenderKern
- not null Kunde dieses Providers
-
deregister
public boolean deregister(ILogAppenderKern logAppenderKern)
- Specified by:
deregister
in interfaceILogProvider
- Parameters:
logAppenderKern
- um Memory schonen zu koennen
-
isRegistered
public boolean isRegistered(ILogAppenderKern appender)
- Specified by:
isRegistered
in interfaceILogProvider
- Parameters:
appender
- einfache Info zur Registrierei
-
reloadAllData
public void reloadAllData()
Description copied from interface:ILogProvider
versucht die Daten frisch zu laden- Specified by:
reloadAllData
in interfaceILogProvider
-
getMessages
public final java.util.List<LogMsg> getMessages()
- Specified by:
getMessages
in interfaceILogProvider
- Returns:
- liefert alle vorhandenen Messages (keine Registrierung noetig)
-
getMessage
public LogMsg getMessage(int index)
- Specified by:
getMessage
in interfaceILogProvider
- Parameters:
index
- 0 kleinergleich index kleiner getSize()- Returns:
- liefert Messages mit Index oder null (keine Registrierung noetig)
-
getSize
public final int getSize()
- Specified by:
getSize
in interfaceILogProvider
- Returns:
- tatsaechliche Anzahl gespeicherter Logging Messages (nach dem Filtern)
-
getCapacity
public final int getCapacity()
Puffer Groesse, immer > 0
-
setCapacity
public final void setCapacity(int capacity)
Puffer Groesse, wird automatisch zwischen min und max gehalten
-
getLastMessage
public final LogMsg getLastMessage()
-
getFilterClone
public final HauptLogFilter getFilterClone()
nicht den Originalfilter, also haben Aenderungen nur einen effekt wenn man explizit doFilter(filter) aufruft
-
doFilter
public final void doFilter(HauptLogFilter wegWirfFilter)
aehnlich setFilter(filter), nur dass intern ein deep Clone verwended wird, der Buffer wird neu gefiltert und kuenftig erst mal immer so
-
registerPreference
public void registerPreference(IPrefManager prefMgr, IPreferences parent)
-
getCapacityDefault
public int getCapacityDefault()
-
getCapacityMinimum
public int getCapacityMinimum()
-
getCapacityMaximum
public int getCapacityMaximum()
-
getCapacityRiskyLarge
public int getCapacityRiskyLarge()
-
-