我尝试了一切让Swiz的LogProcessor运行。这是项目食品商。但是,我担心这些资源指向的是旧版本的swiz。
我想在没有SwizLoggerConfig的情况下实现logprocecor,因为我只需要可能将一些信息记录到thunderbolt。我不需要更多的配置。之后,我开始编写自己的AbstractSwizLoggingTarget。
如果我将类复制到我的环境中,我得到以下错误:类型错误:错误#1034:Typumwandlung fehlgeschlagen: org.swizframework.utils。logging::SwizLogger@e8aa8b1 kann night in mx.logging.ILogger umgewandelt werden。
Der Quelltext:
package de.axurit.util
{
import org.swizframework.core.Bean;
import org.swizframework.processors.BaseMetadataProcessor;
import org.swizframework.processors.ProcessorPriority;
import org.swizframework.reflection.IMetadataTag;
import org.swizframework.utils.logging.SwizLogger;
public class LoggerProcessor extends BaseMetadataProcessor
{
protected static const LOGGER:String = "Logger";
public function LoggerProcessor()
{
super([LOGGER]);
}
override public function get priority():int
{
return ProcessorPriority.INJECT +1;
}
override public function setUpMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
{
var logger:SwizLogger = SwizLogger.getLogger(bean.source);
bean.source[metadataTag.host.name] = logger; //here occurs the error
}
override public function tearDownMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
{
bean.source[metadataTag.host.name] = null;
}
}
}
谁能帮助我如何创建一个自己的元数据处理器中央日志记录(不调试)在瑞士。如果您需要更多代码,请告诉我
谢谢弗兰克。
这是一段漫长而艰难的旅程。结果如下:
package de.axurit.util
{
import org.swizframework.core.Bean;
import org.swizframework.processors.BaseMetadataProcessor;
import org.swizframework.reflection.IMetadataTag;
import org.swizframework.utils.logging.SwizLogger;
public class LoggerProcessor extends BaseMetadataProcessor
{
public function LoggerProcessor()
{
super(["Log"]);
}
override public function setUpMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
{
super.setUpMetadataTag(metadataTag, bean);
bean.source [metadataTag.host.name] = SwizLogger.getLogger(bean.source);
}
override public function tearDownMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
{
super.tearDownMetadataTag(metadataTag,bean);
bean.source[metadataTag.host.name] = null;
}
}
}