英特內軟體股份有限公司


jcx.servlet.common
Class organizationServlet

java.lang.Object
  |
  +--jcx.servlet.common.organizationServlet
Direct Known Subclasses:
orgServletInstance

public class organizationServlet
extends java.lang.Object

 組織圖管理基礎元件,組織資料定義、新增、管理、儲存。
 樹狀結構的組織皆可繼承此類別另做發展。
orgnization的資料架構
組織(organization)是由點對點(node to node)的關係所架構。
  
  
orgnization(Hashtable)
              |
              |   [key]           [value]
              |
              Node (String)   to Node (Hashtable)
                                        |    
                                        |       [key]            [value]
                                        |    
                                        to Node name (String)  condition (String)
  
  
  
  
graph of orgnization 之資料架構
tree(Vector)
  |
  |
  trunk(LinkedList)
           |
           |
           edge(Vector) {
                   to Node( elementAt(0) )
                   |    
                   Node( elementAt(1) )
                   |    
                   condition( elementAt(2) )
      
      


Constructor Summary
organizationServlet()
           
 
Method Summary
 java.util.Vector getNode(java.lang.Object fromNode, java.lang.Object condition)
           得到從本點依據傳入之條件所到達的其他節點.
 java.util.Hashtable getOrg()
           取得組織結構.
static organizationServlet getOrgInstance()
           
 java.util.Vector getPath(java.lang.Object node, java.lang.Object endNode)
           取得兩點之間的所有路徑.
 java.util.Vector makeGraph(java.lang.Object node)
           得到完整的組織圖.
 boolean orgLoad(java.lang.String orgPath)
           以檔案結構建立組織結構的初始作業.
 boolean orgSave(java.lang.String orgPath)
           將組織結構用檔案結構方式儲存的作業.
 boolean putNode(java.lang.Object lable, java.util.Hashtable toNode)
           新增或修改頂點.
 boolean putNode(java.lang.Object lable, java.lang.Object[][] toNode)
           新增與修改頂點.
 boolean removeNode(java.lang.Object lable)
           刪除點.
 void reset()
           將組織圖所有元件清空。.
 java.lang.String toString()
           顯示組織所有元件,DEBUG用.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

organizationServlet

public organizationServlet()
Method Detail

getOrgInstance

public static organizationServlet getOrgInstance()

orgLoad

public boolean orgLoad(java.lang.String orgPath)
以檔案結構建立組織結構的初始作業.
Parameters:
String - 檔案路徑
Returns:
boolean 初始作業成功傳回true;失敗則傳回false
   

orgSave

public boolean orgSave(java.lang.String orgPath)
將組織結構用檔案結構方式儲存的作業.
Parameters:
String - 存檔路徑
Returns:
boolean 儲存的作業成功傳回true;失敗則傳回false
   

putNode

public boolean putNode(java.lang.Object lable,
                       java.lang.Object[][] toNode)
新增與修改頂點.
Parameters:
Object - lable 點的標籤
Object - toNode[][] 另一點的資訊
Returns:
boolean 點新增成功:true;新增失敗:false

	toNode[i][0] 另一點的名稱
	toNode[i][1] 到另一點的條件
ex:
	Object ret[][]={{"B","1"},{"C","2"},{"A","3"}};
	putNode("A",ret);

putNode

public boolean putNode(java.lang.Object lable,
                       java.util.Hashtable toNode)
新增或修改頂點.
Parameters:
Object - lable 點的名稱
Hashtable - toNode 另一點的資訊
Returns:
boolean 點新增成功:true;新增失敗:false

	toNode.key   另一點的名稱
	toNode.value 到另一點的條件
ex:
	Hashtable toNode=new Hashtable();
	toNode.put("B","1");
	toNode.put("C","2");
	toNode.put("A","3");
	putNode("A",toNode);

removeNode

public boolean removeNode(java.lang.Object lable)
刪除點.
Parameters:
Object - lable 點的標籤
Returns:
boolean 點新增成功:true;新增失敗:false
ex:
	removeNode("A");

getPath

public java.util.Vector getPath(java.lang.Object node,
                                java.lang.Object endNode)
取得兩點之間的所有路徑.
Parameters:
Object - node 起始點
Object - endNode 結束點
Returns:
Vector 傳回兩點之間的所有路徑,若無則傳回null
ex:
	getPath("A","B");

reset

public void reset()
將組織圖所有元件清空。.
Returns:
void

getNode

public java.util.Vector getNode(java.lang.Object fromNode,
                                java.lang.Object condition)
得到從本點依據傳入之條件所到達的其他節點.
Parameters:
Object - fromNode 本點
Object - condition 條件
Returns:
Vector 傳回到達的其他節點,若不存在傳回null
ex:
	Vector node = getNode("B","1");

makeGraph

public java.util.Vector makeGraph(java.lang.Object node)
得到完整的組織圖.
Parameters:
Object - Node 傳入的起始點
Returns:
Vector 傳回組織圖,若組織內之點與邊的關係發生錯誤則傳回null

getOrg

public java.util.Hashtable getOrg()
取得組織結構.
Returns:
Hashtable

toString

public java.lang.String toString()
顯示組織所有元件,DEBUG用.
Overrides:
toString in class java.lang.Object
Returns:
void

英特內軟體股份有限公司