⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datamanager.java

📁 一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。
💻 JAVA
字号:
package jp.co.sjts.gsession.link;

/*
 * 僨乕僞儅僱乕僕儍  DataManager.java
 * Copyright (C) 1999-2000 Japan Total System Co,LTD
 *    Satoru K  <koni@sjts.co.jp>
 */
import java.io.File;
import jp.co.sjts.gsession.tools.*;

public class DataManager extends Configure
{
	private String dir;

	// 僐儞僗僩儔僋僞
	public DataManager(String dir) throws GSException
	{
		super(dir);
		this.dir = dir;
	}

	// 僨傿儗僋僩儕偺捛壛
	synchronized public int addDir(String name,int parentDirId)
		throws GSException
	{
		DirData dirData = new DirData(dir);
		dirData.Load();

		int id = incMaxDirId();

		if(!dirData.addDir(id,name,parentDirId)){
			decMaxDirId();
			return -1;
		}

		try{
			Save();
		}catch(GSException e){
			decMaxDirId();
			return  -1;
		}

		dirData.Save();

		return id;
	}

	// 僨傿儗僋僩儕偺嶍彍
	synchronized public void delDir(int dirId)
		throws GSException
	{
		DirData dirData = new DirData(dir);
		dirData.Load();

		__delDir(dirId,dirData);

		dirData.Save();
	}

	private void __delDir(int dirId,DirData dirData)
		throws GSException
	{
		int[] cdirIds = dirData.getChildDirIds(dirId);
		if((cdirIds!=null)&&(cdirIds.length>0)){
			for(int i=0;i<cdirIds.length;i++)
				__delDir(cdirIds[i],dirData);
		}

		dirData.delDir(dirId);
		File linkFile = new File(dir,Integer.toString(dirId));
		if(linkFile.exists())
			linkFile.delete();
	}

	// 僨傿儗僋僩儕柤曄峏
	synchronized public void editDir(int dirId,String name)
		throws GSException
	{
		DirData dirData = new DirData(dir);
		dirData.Load();

		dirData.editDir(dirId,name);
	}

	// 儕儞僋偺捛壛
	synchronized public int addLink(String address,String memo,int currentDirId)
		throws GSException
	{

		int newLinkId = incLinkId();
		LinkData linkData = new LinkData(dir,currentDirId);
		linkData.Load();
		
		linkData.addLink(newLinkId,address,memo);

		linkData.Save();
		
		Save();
		return newLinkId;
	}

	// 儕儞僋偺嶍彍
	synchronized public void delLink(int currentDirId,int[] linkIds)
		throws GSException
	{
		LinkData linkData = new LinkData(dir,currentDirId);
		linkData.Load();

		for(int i=0;i<linkIds.length;i++)
			linkData.delLink(linkIds[i]);

		linkData.Save();
	}

	// 儕儞僋偺堏摦
	synchronized public void moveLink(int srcDirId,int[] linkIds,int dstDirId)
		throws GSException
   	{
		LinkData srcLinkData = new LinkData(dir,srcDirId);
		srcLinkData.Load();
		LinkData dstLinkData = new LinkData(dir,dstDirId);
		dstLinkData.Load();

		for(int i=0;i<linkIds.length;i++){
			String url = srcLinkData.getLinkUrl(linkIds[i]);
			String msg = srcLinkData.getLinkMsg(linkIds[i]);
			srcLinkData.delLink(linkIds[i]);
			dstLinkData.addLink(linkIds[i],url,msg);
		}
		srcLinkData.Save();
		dstLinkData.Save();
	}

	// 儕儞僋偺曇廤
	synchronized public void editLink(int dirId,int linkId
			,String url,String msg)	throws GSException
	{
		LinkData linkData = new LinkData(dir,dirId);
		linkData.Load();

		linkData.editLink(linkId,url,msg);
		linkData.Save();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -