/** * Copyright 2003-2008,非也 * All rights reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses. * */ package org.fireflow.model; import java.util.List; import java.util.Map; /** * 工作流元素的抽象接口,工作流元素主要包括:<br> * 1)业务流程 WorkflowProcess,这是顶层元素<br> * 2)任务(Task)<br> * 3)开始节点(StartNode)、结束节点(EndNode)、同步器(Synchronizer)、环节(Activity)<br> * 4)转移(Transition)和循环(Loop)<br> * 5)流程数据项(DataField)<br> * * @author 非也,nychen2000@163.com * */ public interface ModelElement { public static final String ID_SEPARATOR = "."; /** * 返回元素的序列号, * 业务系统无须关心该序列号。 * @return 元素序列号 */ // public String getSn(); /** * 返回工作流元素的Id * 工作流元素的Id采用“父Id.自身Name”的方式组织。 * @return 元素Id */ public String getId(); /** * 返回工作流元素的名称 * @return 元素名称 */ public String getName(); public void setName(String name); /** * 返回工作流元素的显示名 * @return 显示名 */ public String getDisplayName(); public void setDisplayName(String displayName); /** * 返回流程元素的描述 * @return 流程元素描述 */ public String getDescription(); public void setDescription(String description); /** * 返回父元素 * @return 父元素 */ public ModelElement getParent(); public void setParent(ModelElement parent); // // /** // * 返回事件监听器列表 // * @return 事件监听器列表 // */ // public List<EventListener> getEventListeners(); // public String getExtendedAttribute(String propName); /** * 返回扩展属性Map * @return */ public Map<String, String> getExtendedAttributes(); }