public void updateLogSettings(String name, Level level, String appenderClassName, Struct appenderArgs, String layoutClassName, Struct layoutArgs) throws PageException {
checkWriteAccess();
// TODO
//boolean hasAccess=ConfigWebUtil.hasAccess(config,SecurityManagerImpl.TYPE_GATEWAY);
// if(!hasAccess) throw new SecurityException("no access to update gateway entry");
// check parameters
name=name.trim();
if(StringUtil.isEmpty(name))
throw new ApplicationException("name can't be a empty value");
if(StringUtil.isEmpty(appenderClassName))
throw new ExpressionException("you must define appender class name");
if(StringUtil.isEmpty(layoutClassName))
throw new ExpressionException("you must define layout class name");
try {
ClassUtil.loadClass(appenderClassName);
ClassUtil.loadClass(layoutClassName);
}
catch (ClassException e) {
throw Caster.toPageException(e);
}
Element parent=_getRootElement("logging");
// Update
Element[] children = ConfigWebFactory.getChildren(parent,"logger");
Element el=null;
for(int i=0;i<children.length;i++) {
String n=children[i].getAttribute("name");
if(name.equalsIgnoreCase(n)) {
el=children[i];
break;
}
}
// Insert
if(el==null) {
el=doc.createElement("logger");
parent.appendChild(el);
el.setAttribute("name",name);
}
// appender
if(appenderClassName.equals(ConsoleAppender.class.getName())) appenderClassName="console";
if(appenderClassName.equals(RollingResourceAppender.class.getName())) appenderClassName="resource";
// layout
if(layoutClassName.equals(PatternLayout.class.getName())) layoutClassName="pattern";
if(layoutClassName.equals(ClassicLayout.class.getName())) layoutClassName="classic";
if(layoutClassName.equals(HTMLLayout.class.getName())) layoutClassName="html";
if(layoutClassName.equals(XMLLayout.class.getName())) layoutClassName="xml";
el.setAttribute("level",level.toString());
el.setAttribute("appender",appenderClassName);
el.setAttribute("appender-arguments",toStringCSSStyle(appenderArgs));
el.setAttribute("layout",layoutClassName);
el.setAttribute("layout-arguments",toStringCSSStyle(layoutArgs));
}
ConfigWebAdmin.java 文件源码
java
阅读 22
收藏 0
点赞 0
评论 0
项目:Lucee4
作者:
评论列表
文章目录