DeQmaTech.DracoonSDK
1.2.1
dotnet add package DeQmaTech.DracoonSDK --version 1.2.1
NuGet\Install-Package DeQmaTech.DracoonSDK -Version 1.2.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DeQmaTech.DracoonSDK" Version="1.2.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DeQmaTech.DracoonSDK --version 1.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: DeQmaTech.DracoonSDK, 1.2.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DeQmaTech.DracoonSDK as a Cake Addin
#addin nuget:?package=DeQmaTech.DracoonSDK&version=1.2.1
// Install DeQmaTech.DracoonSDK as a Cake Tool
#tool nuget:?package=DeQmaTech.DracoonSDK&version=1.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Features
- Assemblies for .NET 4.5.2 and .NET Standard 2.0 and .NET Core 2.1
- Just one external reference (Newtonsoft.Json)
- Easy installation using NuGet
- Upload/Download tracking support
- Proxy Support
- Upload/Download cancellation support
List of functions:
- GetParents
- TestServerConnection
- TestTokenValidation
- LoggedIn
- CreateOAuthClient
- GetOAuthClient
- Search
- SearchRoom
- FilterByExtensions
- FilterByClassifications
- FilterBySize
- SearchByPath
- UserInfo
- AcceptEULA
- RevokeToken
- GetFileDownloadUrl
- FileMetadata
- FolderMetadata
- RoomMetadata
- GetRoomID
- GetFilesDownloadUrlAsZip
- CreateNewFolder
- ListRooms
- ListRoot
- DeleteFile
- DeleteFolder
- DeleteRoom
- DeleteFileFolder
- DeleteMultipleFiles
- DeleteMultipleFolders
- DeleteMultipleFilesFolders
- DeleteMultipleRooms
- RenameFolder
- RenameFile
- ChangeFileClassification
- ChangeFolderClassification
- CreateRoom
- EditRoomNameOrQuota
- AddUserToRoom
- DeleteUserFromRoom
- DeleteMultipleUsersFromRoom
- DownloadFile
- DownloadFileAsStream
- DownloadMultipleFilesAsZip
- GetUploadLink
- UploadLocalFile
- GetHomeRoomSettings
- SetHomeRoomSettings
- CopyFile
- CopyAndRenameFile
- CopyMultipleFiles
- CopyFolder
- CopyAndRenameFolder
- CopyMultipleFolders
- CopyFileFolder
- CopyAndRenameFileFolder
- CopyMultipleFilesFolders
- MoveFile
- MoveAndRenameFile
- MoveMultipleFiles
- MoveFolder
- MoveAndRenameFolder
- MoveMultipleFolders
- MoveFileFolder
- MoveAndRenameFileFolder
- MoveMultipleFilesFolders
- ListTrashedFilesFolders
- EmptyRecycleBin
- Bookmark
- UnBookmark
- ListBookmarks
- ListShares
- ShareFileFolder
- UnShareFileFolder
- ShareInfo
Code simple:
Async Sub GetToken()
Dim tkn = Await DracoonSDK.GetToken.GetToken("user", "pass")
DataGridView1.Rows.Add(tkn.token)
End Sub
Sub SetClient()
Dim MyClient As DracoonSDK.IClient = New DracoonSDK.DClient("token")
End Sub
Sub SetClientWithOptions()
Dim Optians As New DracoonSDK.ConnectionSettings With {.CloseConnection = True, .TimeOut = TimeSpan.FromMinutes(30), .Proxy = New DracoonSDK.ProxyConfig With {.ProxyIP = "172.0.0.0", .ProxyPort = 80, .ProxyUsername = "myname", .ProxyPassword = "myPass", .SetProxy = True}}
Dim MyClient As DracoonSDK.IClient = New DracoonSDK.DClient("access token", Optians)
End Sub
Async Sub ListMyRooms()
Dim result = Await MyClient.Data.Room.List(10, 0, SortEnum.name, OrderEnum.asc)
For Each vid In result.RoomsList
DataGridView1.Rows.Add(vid.name, vid.id, vid.size, vid.permissions.create)
Next
End Sub
Async Sub ListMyFilesAndFolders()
Dim fltr As New DracoonSDK.DataClient.List_root_Filtering
fltr.type.FilesFolders = FilesFoldersEnum.both
Dim result = Await MyClient.Data.List(fltr, "room or folder id", 50, 0, SortEnum.name, OrderEnum.asc)
For Each vid In result.itemsList
DataGridView1.Rows.Add(vid.name, vid.id, vid.size, vid.permissions.create, vid.parentId)
Next
End Sub
Async Sub DeleteFileOrFolder()
Dim result = Await MyClient.Data.Delete("file or folder id")
End Sub
Async Sub MoveFileOrFolder()
Dim result = Await MyClient.Data.Move("file id", "folder id", Nothing, ResolutionStrategyEnum.autorename)
End Sub
Async Sub CreateNewFolder()
Dim result = Await MyClient.Data.Folder.Create("parent folder id", "new folder name")
End Sub
Async Sub GetRoomMetadata()
Dim result = Await MyClient.Data.Room.Metadata("room id")
End Sub
Async Sub GetFilesDownloadUrlAsZip()
Dim result = Await MyClient.Share.GetFilesDownloadUrlAsZip(New List(Of Integer) From {"file id", "file id"})
DataGridView1.Rows.Add(result.downloadUrl, result.token)
End Sub
Async Sub CreateNewRoom()
Dim result = Await MyClient.Data.Room.Create("room id", ClassificationEnum.Public, "my user id")
End Sub
Async Sub SearchAFile()
Dim result = Await MyClient.Search.SearchRoom("room id", "ureWiz.png", FilesFoldersEnum.file, -1, 20, 0, SortEnum.name, OrderEnum.asc)
For Each onz In result.itemsList
DataGridView1.Rows.Add(onz.name, onz.File_Folder.ToString, onz.size)
Next
End Sub
Async Sub FilterByExtensions()
Dim RSLT = Await MyClient.Search.FilterByExtensions("file id", "png", FormulaEnum.eq, -1, 20, 0, SortEnum.name, OrderEnum.asc)
For Each onz In RSLT.itemsList
DataGridView1.Rows.Add(onz.name, onz.File_Folder.ToString, ISisFunctions.Bytes_To_KbMbGb.SetBytes(onz.size))
Next
End Sub
Private Async Sub Button38_Click(sender As Object, e As EventArgs) Handles Button38.Click
Dim fltr As New DracoonSDK.ShareClient.List_Shares_Filtering
fltr.name.NameKeyword = "my"
Dim RSLT = Await MyClient.Share.List(fltr, 20, 0, SortEnum.name, OrderEnum.asc)
For Each onz In RSLT.items
DataGridView1.Rows.Add(onz.ShareID, onz.ID, onz.name, onz.nodePath, onz.isEncrypted, onz.isPasswordProtected, onz.accessKey, onz.cntDownloads, onz.smsRecipients, onz.ShareUrl)
Next
End Sub
Async Sub Upload_Local_WithProgressTracking()
Dim UploadCancellationToken As New Threading.CancellationTokenSource()
Dim _ReportCls As New Progress(Of DracoonSDK.ReportStatus)(Sub(ReportClass As DracoonSDK.ReportStatus)
Label1.Text = String.Format("{0}/{1}", (ReportClass.BytesTransferred), (ReportClass.TotalBytes))
ProgressBar1.Value = CInt(ReportClass.ProgressPercentage)
Label2.Text = CStr(ReportClass.TextStatus)
End Sub)
Await MyClient.Data.File.Upload("J:\DB\myvideo.mp4", UploadTypes.FilePath, "myvideo.mp4", "folder id", ClassificationEnum.Internal, _ReportCls, UploadCancellationToken.Token)
End Sub
Async Sub Download_File_WithProgressTracking()
Dim DownloadCancellationToken As New Threading.CancellationTokenSource()
Dim _ReportCls As New Progress(Of DracoonSDK.ReportStatus)(Sub(ReportClass As DracoonSDK.ReportStatus)
Label1.Text = String.Format("{0}/{1}", (ReportClass.BytesTransferred), (ReportClass.TotalBytes))
ProgressBar1.Value = CInt(ReportClass.ProgressPercentage)
Label2.Text = CStr(ReportClass.TextStatus)
End Sub)
Await MyClient.Data.File.Download("file id", "J:\DB\", "myvideo.mp4", _ReportCls, DownloadCancellationToken.Token)
End Sub
Async Sub CreateNewDevApp()
Dim RSLT = Await MyClient.Account.CreateOAuthClient("NewTestDraClient", "https://MyDomain.org/Dracoon/app.html")
DataGridView1.Rows.Add(RSLT.clientName, RSLT.clientId, RSLT.clientSecret, RSLT.grantTypes, RSLT.accessTokenValidity, RSLT.isEnabled, RSLT.isStandard, RSLT.redirectUris, RSLT.refreshTokenValidity)
End Sub
Async Sub AppInfo()
Dim RSLT = Await MyClient.Account.GetOAuthClient()
DataGridView1.Rows.Add(RSLT.clientName)
End Sub
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 is compatible. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net452 is compatible. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 2.1
- Newtonsoft.Json (>= 11.0.2)
- System.Net.Http (>= 4.3.3)
-
.NETFramework 4.5.2
- Newtonsoft.Json (>= 11.0.2)
-
.NETStandard 2.0
- Newtonsoft.Json (>= 11.0.2)
- System.Net.Http (>= 4.3.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.