//create folder public void CreateFolder(IItemNode node) { CheckThread(false); switch (node.GetRoot.RootType.Type) { case CloudType.Dropbox: Dropbox.CreateFolder(node); break; case CloudType.GoogleDrive: GoogleDrive.CreateFolder(node); break; case CloudType.LocalDisk: LocalDisk.CreateFolder(node); break; case CloudType.Mega: MegaNz.CreateFolder(node); break; default: throw new UnknowCloudNameException("Error Unknow Cloud Type: " + node.GetRoot.RootType.Type.ToString()); } }
//download file public Stream GetFileStream(IItemNode node, long Startpos = -1, long endpos = -1, bool IsUpload = false, object DataEx = null) { switch (node.GetRoot.RootType.Type) { case CloudType.Dropbox: return(Dropbox.GetFileStream(node, Startpos, endpos));//download only case CloudType.GoogleDrive: return(GoogleDrive.GetFileStream(node, Startpos, endpos));//download only case CloudType.LocalDisk: return(LocalDisk.GetFileSteam(node, IsUpload, Startpos));//upload/download case CloudType.Mega: return(MegaNz.GetStream(node, Startpos, endpos, IsUpload, DataEx));// default: throw new UnknowCloudNameException("Error Unknow Cloud Type: " + node.GetRoot.RootType.Type.ToString()); } }
//List item in folder public IItemNode GetItemsList(IItemNode node) { CheckThread(false); switch (node.GetRoot.RootType.Type) { case CloudType.Dropbox: return(Dropbox.GetListFileFolder(node)); case CloudType.GoogleDrive: return(GoogleDrive.GetListFileFolder(node)); case CloudType.LocalDisk: return(LocalDisk.GetListFileFolder(node)); case CloudType.Mega: return(MegaNz.GetListFileFolder(node)); default: throw new UnknowCloudNameException("Error Unknow Cloud Type: " + node.GetRoot.RootType.Type.ToString()); } }
public IItemNode GetFileInfo(IItemNode node) { switch (node.GetRoot.RootType.Type) { case CloudType.Dropbox: return(Dropbox.GetMetaData(node)); case CloudType.GoogleDrive: Drivev2_File item = GoogleDrive.GetMetadataItem(node); node.Info.Size = item.fileSize ?? -1; node.Info.Name = item.title; node.Info.DateMod = item.modifiedDate ?? DateTime.Now; return(node); case CloudType.LocalDisk: return(LocalDisk.GetFileInfo(node)); case CloudType.Mega: return(MegaNz.GetItem(node)); default: throw new UnknowCloudNameException("Error Unknow Cloud Type: " + node.GetRoot.RootType.Type.ToString()); } }
public ExplorerNode GetFileInfo(ExplorerNode node) { switch (node.GetRoot.NodeType.Type) { case CloudType.Dropbox: return(Dropbox.GetMetaData(node)); case CloudType.GoogleDrive: GD_item item = GoogleDrive.GetMetadataItem(node); node.Info.Size = item.fileSize; node.Info.Name = item.title; node.Info.DateMod = DateTime.Parse(item.modifiedDate); return(node); case CloudType.LocalDisk: return(LocalDisk.GetFileInfo(node)); case CloudType.Mega: return(MegaNz.GetItem(node)); default: throw new UnknowCloudNameException("Error Unknow Cloud Type: " + node.GetRoot.NodeType.Type.ToString()); } }