コード例 #1
0
ファイル: ShareManDB.designer.cs プロジェクト: vinilin/SYTD
 partial void DeleteFileSetLink(FileSetLink instance);
コード例 #2
0
ファイル: ShareManDB.designer.cs プロジェクト: vinilin/SYTD
 partial void UpdateFileSetLink(FileSetLink instance);
コード例 #3
0
ファイル: MasterControl.asmx.cs プロジェクト: vinilin/SYTD
        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;
        }
コード例 #4
0
ファイル: ShareManDB.designer.cs プロジェクト: vinilin/SYTD
 partial void InsertFileSetLink(FileSetLink instance);
コード例 #5
0
ファイル: MasterControl.asmx.cs プロジェクト: vinilin/SYTD
        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 = "";
        }