All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alogic.xscript.Logiclet Maven / Gradle / Ivy

There is a newer version: 1.6.17
Show newest version
package com.alogic.xscript;

import com.alogic.xscript.doc.XsObject;
import com.alogic.xscript.log.LogInfo;
import com.anysoft.stream.Handler;
import com.anysoft.util.Configurable;
import com.anysoft.util.Reportable;
import com.anysoft.util.XMLConfigurable;

/**
 * 微服务单元
 * 
 * @author duanyy
 * 
 * @version 1.6.8.14 [20170509 duanyy] 
* - 增加xscript的中间文档模型,以便支持多种报文协议
* */ public interface Logiclet extends Configurable,XMLConfigurable,Reportable{ /** * 执行 * @param root 结果文档根目录 * @param current 结果文档当前目录 * @param ctx 服务上下文 */ public void execute(XsObject root,XsObject current,LogicletContext ctx,ExecuteWatcher watcher); /** * 记录日志 * @param logInfo */ public void log(LogInfo logInfo); /** * 获取父节点 * @return 父节点实例 */ public Logiclet parent(); /** * 是否可执行 * @return true|false */ public boolean isExecutable(); /** * 获取XML语法的tag * @return tag */ public String getXmlTag(); /** * 根据xmlTag创建logiclet * @param xmlTag xml tag * @param parent 父节点 * @return logiclet实例 */ public Logiclet createLogiclet(String xmlTag,Logiclet parent); /** * 注册Logiclet的实现模块 *

* 所注册的module在该节点及其子节点有效。 * * @param xmltag xml tag * @param clazz Class实例 */ public void registerModule(String xmltag,Class clazz); /** * 注册异常处理模块 * @param id 异常code * @param exceptionHandler 异常处理段 */ public void registerExceptionHandler(String id,Logiclet exceptionHandler); /** * 注册日志处理器 * @param logger 日志处理器 */ public void registerLogger(Handler logger); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy