📄 datamanager.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 + -