Как мне создать экземпляр для конструктора? - PullRequest
0 голосов
/ 04 июня 2011

Я не могу создать объект для этой кодировки.Как я могу получить доступ к этим значениям, я хочу вернуть значение msg в этой кодировке?

package com.my;

import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.VectorAppender;
import org.apache.log4j.spi.LoggingEvent;
import java.util.Vector;
public class LogCapture 
    {
    private final VectorAppender appender;
    private final Level level;
    public LogCapture(final Level level)
        {
        this.level = level;
        Logger root = Logger.getRootLogger();
        appender = new VectorAppender();
        root.addAppender(appender);
        }
public static void main(String args[])
{
    new LogCapture(Level.INFO);

    LogCapture.getMessage() ;
}
    public String getMessage()
        {
        Vector vector = appender.getVector();
        String msg = null;
        switch (vector.size())
            {
        case 0:
            break;
        case 1:
            LoggingEvent event = (LoggingEvent) vector.elementAt(0);
            msg = event.getRenderedMessage();
            break;
        }
        return msg;
    }
}

1 Ответ

0 голосов
/ 04 июня 2011

Я не уверен, что понимаю вопрос, но это звучит легко. Вы создаете экземпляр как это:

new LogCapture(Level.INFO);

Вы можете найти другие уровни журнала здесь: Документация для уровня

Изменить (так как ОП добавил еще немного кода): Измените код в основном методе так, чтобы он говорил

LogCapture logCapture = new LogCapture(Level.INFO);
logCapture.getMessage();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...