You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Aris Marsopoulos (JIRA)" <ji...@apache.org> on 2009/01/12 20:54:01 UTC

[jira] Created: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
----------------------------------------------------------------------------------

                 Key: DIRMINA-656
                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
             Project: MINA
          Issue Type: Bug
          Components: Filter
    Affects Versions: 2.0.0-M4
         Environment: Windows-XP SP3
jdk1.6.0_11
            Reporter: Aris Marsopoulos
            Priority: Minor


The log methods in class LoggingFilter use the subsequent eventLevel instead of current

For example:

If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).

    private void log(LogLevel eventLevel, String message) {
    	if (eventLevel == LogLevel.TRACE) {
    		logger.trace(message);
    	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
    		logger.info(message);
    	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
    		logger.warn(message);
    	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
    		logger.error(message);
    	}
    }

Remedy:

Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)

    /**
     * Log if the logger and the current event log level are compatible. We log
     * a message and an exception.
     * 
     * @param eventLevel the event log level as requested by the user
     * @param message the message to log
     * @param cause the exception cause to log
     */
    private void log(LogLevel eventLevel, String message, Throwable cause) {
        switch(eventLevel)
        {
            case TRACE:
                logger.trace(message, cause);
                break;
            case DEBUG:
            case INFO:
                logger.info(message, cause);
                break;
            case WARN:
                logger.warn(message, cause);
                break;
            case ERROR:
                logger.error(message, cause);
                break;
        }
    }

    /**
     * Log if the logger and the current event log level are compatible. We log
     * a formated message and its parameters. 
     * 
     * @param eventLevel the event log level as requested by the user
     * @param message the formated message to log
     * @param param the parameter injected into the message
     */
    private void log(LogLevel eventLevel, String message, Object param) {
        switch(eventLevel)
        {
            case TRACE:
                logger.trace(message, param);
                break;
            case DEBUG:
            case INFO:
                logger.info(message, param);
                break;
            case WARN:
                logger.warn(message, param);
                break;
            case ERROR:
                logger.error(message, param);
                break;
        }
    }

    /**
     * Log if the logger and the current event log level are compatible. We log
     * a simple message. 
     * 
     * @param eventLevel the event log level as requested by the user
     * @param message the message to log
     */
    private void log(LogLevel eventLevel, String message) {
        switch(eventLevel)
        {
            case TRACE:
                logger.trace(message);
                break;
            case DEBUG:
            case INFO:
                logger.info(message);
                break;
            case WARN:
                logger.warn(message);
                break;
            case ERROR:
                logger.error(message);
                break;
        }
    }



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny reassigned DIRMINA-656:
-----------------------------------------

    Assignee: Emmanuel Lecharny

> Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
> ----------------------------------------------------------------------------------
>
>                 Key: DIRMINA-656
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0-M4
>         Environment: Windows-XP SP3
> jdk1.6.0_11
>            Reporter: Aris Marsopoulos
>            Assignee: Emmanuel Lecharny
>            Priority: Minor
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> The log methods in class LoggingFilter use the subsequent eventLevel instead of current
> For example:
> If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).
>     private void log(LogLevel eventLevel, String message) {
>     	if (eventLevel == LogLevel.TRACE) {
>     		logger.trace(message);
>     	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
>     		logger.info(message);
>     	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
>     		logger.warn(message);
>     	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
>     		logger.error(message);
>     	}
>     }
> Remedy:
> Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a message and an exception.
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      * @param cause the exception cause to log
>      */
>     private void log(LogLevel eventLevel, String message, Throwable cause) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, cause);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, cause);
>                 break;
>             case WARN:
>                 logger.warn(message, cause);
>                 break;
>             case ERROR:
>                 logger.error(message, cause);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a formated message and its parameters. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the formated message to log
>      * @param param the parameter injected into the message
>      */
>     private void log(LogLevel eventLevel, String message, Object param) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, param);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, param);
>                 break;
>             case WARN:
>                 logger.warn(message, param);
>                 break;
>             case ERROR:
>                 logger.error(message, param);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a simple message. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      */
>     private void log(LogLevel eventLevel, String message) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message);
>                 break;
>             case WARN:
>                 logger.warn(message);
>                 break;
>             case ERROR:
>                 logger.error(message);
>                 break;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny closed DIRMINA-656.
-------------------------------------


> Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
> ----------------------------------------------------------------------------------
>
>                 Key: DIRMINA-656
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0-M4
>         Environment: Windows-XP SP3
> jdk1.6.0_11
>            Reporter: Aris Marsopoulos
>            Assignee: Emmanuel Lecharny
>            Priority: Minor
>             Fix For: 2.0.0-M5
>
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> The log methods in class LoggingFilter use the subsequent eventLevel instead of current
> For example:
> If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).
>     private void log(LogLevel eventLevel, String message) {
>     	if (eventLevel == LogLevel.TRACE) {
>     		logger.trace(message);
>     	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
>     		logger.info(message);
>     	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
>     		logger.warn(message);
>     	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
>     		logger.error(message);
>     	}
>     }
> Remedy:
> Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a message and an exception.
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      * @param cause the exception cause to log
>      */
>     private void log(LogLevel eventLevel, String message, Throwable cause) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, cause);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, cause);
>                 break;
>             case WARN:
>                 logger.warn(message, cause);
>                 break;
>             case ERROR:
>                 logger.error(message, cause);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a formated message and its parameters. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the formated message to log
>      * @param param the parameter injected into the message
>      */
>     private void log(LogLevel eventLevel, String message, Object param) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, param);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, param);
>                 break;
>             case WARN:
>                 logger.warn(message, param);
>                 break;
>             case ERROR:
>                 logger.error(message, param);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a simple message. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      */
>     private void log(LogLevel eventLevel, String message) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message);
>                 break;
>             case WARN:
>                 logger.warn(message);
>                 break;
>             case ERROR:
>                 logger.error(message);
>                 break;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny resolved DIRMINA-656.
---------------------------------------

    Resolution: Fixed

Applied the suggested correction (using a switch)

http://svn.apache.org/viewvc?rev=733937&view=rev

Thanks !

> Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
> ----------------------------------------------------------------------------------
>
>                 Key: DIRMINA-656
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0-M4
>         Environment: Windows-XP SP3
> jdk1.6.0_11
>            Reporter: Aris Marsopoulos
>            Assignee: Emmanuel Lecharny
>            Priority: Minor
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> The log methods in class LoggingFilter use the subsequent eventLevel instead of current
> For example:
> If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).
>     private void log(LogLevel eventLevel, String message) {
>     	if (eventLevel == LogLevel.TRACE) {
>     		logger.trace(message);
>     	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
>     		logger.info(message);
>     	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
>     		logger.warn(message);
>     	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
>     		logger.error(message);
>     	}
>     }
> Remedy:
> Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a message and an exception.
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      * @param cause the exception cause to log
>      */
>     private void log(LogLevel eventLevel, String message, Throwable cause) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, cause);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, cause);
>                 break;
>             case WARN:
>                 logger.warn(message, cause);
>                 break;
>             case ERROR:
>                 logger.error(message, cause);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a formated message and its parameters. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the formated message to log
>      * @param param the parameter injected into the message
>      */
>     private void log(LogLevel eventLevel, String message, Object param) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, param);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, param);
>                 break;
>             case WARN:
>                 logger.warn(message, param);
>                 break;
>             case ERROR:
>                 logger.error(message, param);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a simple message. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      */
>     private void log(LogLevel eventLevel, String message) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message);
>                 break;
>             case WARN:
>                 logger.warn(message);
>                 break;
>             case ERROR:
>                 logger.error(message);
>                 break;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny updated DIRMINA-656:
--------------------------------------

    Fix Version/s: 2.0.0-M6

> Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
> ----------------------------------------------------------------------------------
>
>                 Key: DIRMINA-656
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0-M4
>         Environment: Windows-XP SP3
> jdk1.6.0_11
>            Reporter: Aris Marsopoulos
>            Assignee: Emmanuel Lecharny
>            Priority: Minor
>             Fix For: 2.0.0-M5
>
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> The log methods in class LoggingFilter use the subsequent eventLevel instead of current
> For example:
> If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).
>     private void log(LogLevel eventLevel, String message) {
>     	if (eventLevel == LogLevel.TRACE) {
>     		logger.trace(message);
>     	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
>     		logger.info(message);
>     	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
>     		logger.warn(message);
>     	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
>     		logger.error(message);
>     	}
>     }
> Remedy:
> Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a message and an exception.
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      * @param cause the exception cause to log
>      */
>     private void log(LogLevel eventLevel, String message, Throwable cause) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, cause);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, cause);
>                 break;
>             case WARN:
>                 logger.warn(message, cause);
>                 break;
>             case ERROR:
>                 logger.error(message, cause);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a formated message and its parameters. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the formated message to log
>      * @param param the parameter injected into the message
>      */
>     private void log(LogLevel eventLevel, String message, Object param) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, param);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, param);
>                 break;
>             case WARN:
>                 logger.warn(message, param);
>                 break;
>             case ERROR:
>                 logger.error(message, param);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a simple message. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      */
>     private void log(LogLevel eventLevel, String message) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message);
>                 break;
>             case WARN:
>                 logger.warn(message);
>                 break;
>             case ERROR:
>                 logger.error(message);
>                 break;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (DIRMINA-656) Methods log in LoggingFilter.java use the subsequent eventLevel instead of current

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny updated DIRMINA-656:
--------------------------------------

    Fix Version/s:     (was: 2.0.0-M6)
                   2.0.0-M5

> Methods log in LoggingFilter.java use the subsequent eventLevel instead of current
> ----------------------------------------------------------------------------------
>
>                 Key: DIRMINA-656
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-656
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0-M4
>         Environment: Windows-XP SP3
> jdk1.6.0_11
>            Reporter: Aris Marsopoulos
>            Assignee: Emmanuel Lecharny
>            Priority: Minor
>             Fix For: 2.0.0-M5
>
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> The log methods in class LoggingFilter use the subsequent eventLevel instead of current
> For example:
> If the current eventLevel i= LogLevel.INFO the log method uses logger.warn to print the message (see source code for proof).
>     private void log(LogLevel eventLevel, String message) {
>     	if (eventLevel == LogLevel.TRACE) {
>     		logger.trace(message);
>     	} else if (eventLevel.getLevel() > LogLevel.INFO.getLevel()) {
>     		logger.info(message);
>     	} else if (eventLevel.getLevel() > LogLevel.WARN.getLevel()) {
>     		logger.warn(message);
>     	} else if (eventLevel.getLevel() > LogLevel.ERROR.getLevel()) {
>     		logger.error(message);
>     	}
>     }
> Remedy:
> Either replace the > operator by a >= operator in all three log methods or use a switch statement (see code below)
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a message and an exception.
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      * @param cause the exception cause to log
>      */
>     private void log(LogLevel eventLevel, String message, Throwable cause) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, cause);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, cause);
>                 break;
>             case WARN:
>                 logger.warn(message, cause);
>                 break;
>             case ERROR:
>                 logger.error(message, cause);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a formated message and its parameters. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the formated message to log
>      * @param param the parameter injected into the message
>      */
>     private void log(LogLevel eventLevel, String message, Object param) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message, param);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message, param);
>                 break;
>             case WARN:
>                 logger.warn(message, param);
>                 break;
>             case ERROR:
>                 logger.error(message, param);
>                 break;
>         }
>     }
>     /**
>      * Log if the logger and the current event log level are compatible. We log
>      * a simple message. 
>      * 
>      * @param eventLevel the event log level as requested by the user
>      * @param message the message to log
>      */
>     private void log(LogLevel eventLevel, String message) {
>         switch(eventLevel)
>         {
>             case TRACE:
>                 logger.trace(message);
>                 break;
>             case DEBUG:
>             case INFO:
>                 logger.info(message);
>                 break;
>             case WARN:
>                 logger.warn(message);
>                 break;
>             case ERROR:
>                 logger.error(message);
>                 break;
>         }
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.