Class JavaLog

    • Field Detail

      • TOPLINK_NAMESPACE

        public static final java.lang.String TOPLINK_NAMESPACE
        Stores the default session name in case there is the session name is missing.
        See Also:
        Constant Field Values
      • LOGGING_LOCALIZATION_STRING

        protected static final java.lang.String LOGGING_LOCALIZATION_STRING
        See Also:
        Constant Field Values
      • TRACE_LOCALIZATION_STRING

        protected static final java.lang.String TRACE_LOCALIZATION_STRING
        See Also:
        Constant Field Values
      • DEFAULT_TOPLINK_NAMESPACE

        public static final java.lang.String DEFAULT_TOPLINK_NAMESPACE
        See Also:
        Constant Field Values
      • SESSION_TOPLINK_NAMESPACE

        public static final java.lang.String SESSION_TOPLINK_NAMESPACE
        See Also:
        Constant Field Values
    • Constructor Detail

      • JavaLog

        public JavaLog()
        INTERNAL:
    • Method Detail

      • addLogger

        protected void addLogger​(java.lang.String loggerCategory,
                                 java.lang.String loggerNameSpace)
        INTERNAL: Add Logger to the categoryloggers.
      • getCategoryLoggers

        public java.util.Map getCategoryLoggers()
        INTERNAL: Return catagoryloggers
      • getLevel

        public int getLevel​(java.lang.String category)
        PUBLIC:

        Return the effective log level for the name space extracted from session and category. If a Logger's level is set to be null then the Logger will use an effective Level that will be obtained by walking up the parent tree and using the first non-null Level.

        Specified by:
        getLevel in interface SessionLog
        Overrides:
        getLevel in class AbstractSessionLog
        Parameters:
        category - the string representation of a EclipseLink category, e.g. "sql", "transaction" ...
        Returns:
        the effective log level.

      • setLevel

        public void setLevel​(int level,
                             java.lang.String category)
        PUBLIC:

        Set the log level to a logger with name space extracted from the given category.

        Specified by:
        setLevel in interface SessionLog
        Overrides:
        setLevel in class AbstractSessionLog
        Parameters:
        level - the new log level
        category - the string representation of an EclipseLink category, e.g. "sql", "transaction" ...
      • setWriter

        public void setWriter​(java.io.OutputStream fileOutputStream)
        PUBLIC:

        Set the output stream that will receive the formatted log entries.

        Overrides:
        setWriter in class AbstractSessionLog
        Parameters:
        fileOutputStream - the file output stream will receive the formatted log entries.

      • getNameSpaceString

        protected java.lang.String getNameSpaceString​(java.lang.String category)
        INTERNAL: Return the name space for the given category from the map.
      • getLogger

        protected java.util.logging.Logger getLogger​(java.lang.String category)
        INTERNAL: Return the Logger for the given category
      • getJavaLevel

        protected java.util.logging.Level getJavaLevel​(int level)
        INTERNAL: Return the corresponding java.util.logging.Level for a given TopLink level.
      • shouldLog

        public boolean shouldLog​(int level,
                                 java.lang.String category)
        PUBLIC:

        Check if a message of the given level would actually be logged by the logger with name space built from the given session and category. Return the shouldLog for the given category from

        Specified by:
        shouldLog in interface SessionLog
        Overrides:
        shouldLog in class AbstractSessionLog
        Parameters:
        level - the log request level
        category - the string representation of an EclipseLink category, e.g. "sql", "transaction" ...*
        Returns:
        true if the given message level will be logged

      • log

        public void log​(SessionLogEntry entry)
        PUBLIC:

        Log a SessionLogEntry

        Specified by:
        log in interface SessionLog
        Specified by:
        log in class AbstractSessionLog
        Parameters:
        entry - SessionLogEntry that holds all the information for a TopLink logging event

      • internalLog

        protected void internalLog​(SessionLogEntry entry,
                                   java.util.logging.Level javaLevel,
                                   java.util.logging.Logger logger)
        INTERNAL:

        Build a LogRecord

        Parameters:
        entry - SessionLogEntry that holds all the information for a TopLink logging event
        javaLevel - the message level

      • throwing

        public void throwing​(java.lang.Throwable throwable)
        PUBLIC:

        Log a throwable.

        Specified by:
        throwing in interface SessionLog
        Overrides:
        throwing in class AbstractSessionLog
        Parameters:
        throwable - a throwable

      • clone

        public java.lang.Object clone()
        INTERNAL: Each session owns its own session log because session is stored in the session log
        Specified by:
        clone in interface SessionLog
        Overrides:
        clone in class AbstractSessionLog