partial void DeleteFileSetLink(FileSetLink instance);
partial void UpdateFileSetLink(FileSetLink instance);
private long CommitBase(BaseItem baseInfo, ref FSM.FileSet fset,string srcIp,ShareManDBDataContext context) { // 插入基本信息 baseInfo.Ext4 = fset.File.Length.ToString(); context.BaseItem.InsertOnSubmit(baseInfo); context.SubmitChanges(); // 插入审核信息 Audit ad = new Audit { ID = baseInfo.ID, AuditDate = DateTime.Now, State = 0 }; context.Audit.InsertOnSubmit(ad); // 開始創建文件集 FSM.FileSetMan src = new ShareMan.FSM.FileSetMan(); QS.Queries qs = new ShareMan.QS.Queries(); qs.Url ="http://localhost/QS/QueryService.asmx" ; // 查詢WebService服務地址 src.Url = qs.QueryUrl(srcIp, QS.ServiceType.FileSetMan); FileSetLink fsSrc = new FileSetLink(); //在源站点创建文件集 fsSrc.FileSetID = src.CreateFileSet(fset,false); fsSrc.IP = srcIp; /* * 此处查询当前活动的中转服务器 * * */ FileSetLink fsInter = new FileSetLink(); FSM.FileSetMan inter = new ShareMan.FSM.FileSetMan(); // 在中转服务器上创建文件集信息 fsInter.IP = qs.QueryActInterSrv(); inter.Url = qs.QueryUrl(fsInter.IP, QS.ServiceType.FileSetMan); fsInter.FileSetID = inter.CreateFileSet(fset,true); // 创建文件集进度信息 CreateProgress(baseInfo,srcIp,fsInter.IP,fsInter.FileSetID,"上传",context); // 查询中转服务器上创建的文件集信息,并保存,用于启动传输任务 fset = inter.QureyFileSet(fsInter.FileSetID); // 准备传输文件集 Trans fsrv = new Trans(); fsrv.Url = qs.QueryUrl(qs.QueryActInterSrv(), QS.ServiceType.FileService); Position pos = new Position(); pos.ip = srcIp; fsrv.Transform(Convert(fset),pos); fsrv.Start(); // 提交更改 context.FileSetLink.InsertOnSubmit(fsSrc); context.FileSetLink.InsertOnSubmit(fsInter); context.SubmitChanges(); // 创建文件链接信息 ItemLink iLink = new ItemLink(); iLink.ID = baseInfo.ID; iLink.SrcLink = fsSrc.ID; iLink.InterLink = fsInter.ID; context.ItemLink.InsertOnSubmit(iLink); context.SubmitChanges(); return baseInfo.ID; }
partial void InsertFileSetLink(FileSetLink instance);
public FSM.FileSet CreateFileSet(long id, FSM.FileSet fset, string srcIp,ShareManDBDataContext context) { // 開始創建文件集 FSM.FileSetMan fsm = new ShareMan.FSM.FileSetMan(); QS.Queries qs = new ShareMan.QS.Queries(); // qs.Url = "http://localhost/QS/QueryService.asmx"; // 查詢WebService服務地址 fsm.Url = qs.QueryUrl(srcIp, QS.ServiceType.FileSetMan); FileSetLink fsSrc = new FileSetLink(); //在源站点创建文件集 fsSrc.FileSetID = fsm.CreateFileSet(fset, true); fsSrc.IP = srcIp; FileSetLink fsInter = new FileSetLink(); // 在中转服务器上创建文件集信息 fsm.Url = qs.QueryUrl("", QS.ServiceType.InterServer); fsInter.FileSetID = fsm.CreateFileSet(fset,true); // 查询中转服务器上创建的文件集信息,并保存,用于启动传输任务 return fsm.QureyFileSet(fsInter.FileSetID); //fsInter.IP = ""; }