Esempio n. 1
0
        public async Task ListEveryFileAndFolder()
        {
            var token  = "YOUR_TOKEN_HERE";
            var config = new PutioConfiguration(token);
            var client = new PutIoApiClient(config);

            var allFileName = new List <string>();

            // Start to list files based on the following parameters
            var listFilesResponse = await client.Files.ListFiles(new ListFilesRequest
            {
                ParentId    = -1,
                FilePerPage = 25,
            });

            var cursor = listFilesResponse.Cursor;

            allFileName.AddRange(listFilesResponse.Files.Select(x => x.Name));

            // If we have a cursor then continue to list everything until we are done
            while (cursor != null)
            {
                var listFilesContinue = await client.Files.ListFilesContinue(new ListFilesContinueRequest(cursor, 25));

                allFileName.AddRange(listFilesContinue.Files.Select(x => x.Name));
                cursor = listFilesContinue.Cursor;
            }

            allFileName.ForEach(x => Debug.WriteLine(x));
        }
Esempio n. 2
0
        public async Task CreateNewTransfer()
        {
            var token  = "YOUR_TOKEN_HERE";
            var config = new PutioConfiguration(token);
            var client = new PutIoApiClient(config);

            await client.Transfers.CancelTransfers(new CancelTransfersRequest(59289953));

            // List all transfers
            var allTransfersResponse = await client.Transfers.ListTransfers();

            allTransfersResponse.ShouldNotBeNull();

            // Add transfer
            var addTransferResponse = await client.Transfers.AddTransfer(new AddTransferRequest("https://www.youtube.com/watch?v=dQw4w9WgXcQ"));

            addTransferResponse.ShouldNotBeNull();

            // Wait a bit for the transfer to complete
            await Task.Delay(5000);

            // Get status of transfer, it should have completed
            var transferResponse = await client.Transfers.Transfer(addTransferResponse.Id);

            transferResponse.ShouldNotBeNull();

            // Delete the resulting file
            await client.Files.DeleteFiles(new DeleteFilesRequest(transferResponse.FileId.Value));

            // Remove the transfer
            await client.Transfers.CleanTransfers(new CleanTransfersRequest(transferResponse.Id));
        }
Esempio n. 3
0
        protected BaseTest()
        {
            _handlerMock = new Mock <HttpMessageHandler>(MockBehavior.Strict);

            PutioConfiguration = new PutioConfiguration
            {
                Token            = "TEST_TOKEN",
                ApiHttpClient    = new HttpClient(_handlerMock.Object),
                UploadHttpClient = new HttpClient(_handlerMock.Object)
            };

            PutioApiClient = new PutIoApiClient(PutioConfiguration);
        }
Esempio n. 4
0
        public async Task FolderAndFileUpload()
        {
            var token      = "YOUR_TOKEN_HERE";
            var config     = new PutioConfiguration(token);
            var client     = new PutIoApiClient(config);
            var folderName = RandomStringGenerator.Generate(10);
            var fileName   = RandomStringGenerator.Generate(10);

            // Create new folder in root directory
            var newFolder = await client.Files.CreateFolder(new CreateFolderRequest(folderName, 0));

            newFolder.ShouldNotBeNull();
            var folderId = newFolder.Id;

            // Upload image to the new folder
            var fileBytes = System.IO.File.ReadAllBytes($"{Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(FileTests)).Location)}/Data/testimage.jpg");
            await client.Files.UploadFile(new UploadFileRequest(fileBytes, fileName, folderId));

            // Verify the image exists in the folder
            var filesInFolder = await client.Files.ListFiles(new ListFilesRequest
            {
                ParentId = folderId
            });

            filesInFolder.ShouldNotBeNull();
            filesInFolder.Files.ShouldNotBeNull();
            filesInFolder.Files.Count().ShouldBe(1);

            var uploadedFile = filesInFolder.Files.First();

            uploadedFile.Name.ShouldStartWith(fileName);
            uploadedFile.FileType.ShouldBe(FileType.File);

            // Delete the file
            await client.Files.DeleteFiles(new DeleteFilesRequest(uploadedFile.Id));

            // Verify file no longer exists
            filesInFolder = await client.Files.ListFiles(new ListFilesRequest
            {
                ParentId = folderId
            });

            filesInFolder.ShouldNotBeNull();
            filesInFolder.Files.ShouldNotBeNull();
            filesInFolder.Files.Count().ShouldBe(0);

            // Delete the folder
            await client.Files.DeleteFiles(new DeleteFilesRequest(folderId));
        }
Esempio n. 5
0
        public async Task CreateZip()
        {
            var token      = "YOUR_TOKEN_HERE";
            var config     = new PutioConfiguration(token);
            var client     = new PutIoApiClient(config);
            var folderName = RandomStringGenerator.Generate(10);
            var fileName   = RandomStringGenerator.Generate(10);

            // Create new folder in root directory
            var newFolder = await client.Files.CreateFolder(new CreateFolderRequest(folderName, 0));

            newFolder.ShouldNotBeNull();
            var folderId = newFolder.Id;

            // Upload image to the new folder
            var fileBytes = System.IO.File.ReadAllBytes($"{Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(FileTests)).Location)}/Data/testimage.jpg");
            await client.Files.UploadFile(new UploadFileRequest(fileBytes, fileName, folderId));

            // Verify the image exists in the folder
            var filesInFolder = await client.Files.ListFiles(new ListFilesRequest
            {
                ParentId = folderId
            });

            filesInFolder.ShouldNotBeNull();
            filesInFolder.Files.ShouldNotBeNull();
            filesInFolder.Files.Count().ShouldBe(1);

            // Put the image in a zip
            var zipId = await client.Zips.CreateZip(new CreateZipRequest(filesInFolder.Files.First().Id));

            zipId.ShouldNotBeNull();

            // Lis active zip operations
            var zipOperations = await client.Zips.ListZips();

            zipOperations.ShouldNotBeNull();
            zipOperations.Count().ShouldBe(1);

            // Get the status of the zip
            var zip = await client.Zips.GetZip(zipId);

            zip.ShouldNotBeNull();
        }
Esempio n. 6
0
        public async Task UpdateAccountSettings()
        {
            var token  = "YOUR_TOKEN_HERE";
            var config = new PutioConfiguration(token);
            var client = new PutIoApiClient(config);

            // Get account info for the user
            var accountInfo = await client.Account.GetAccountInfo();

            accountInfo.ShouldNotBeNull();

            // Get account settings
            var accountSettings = await client.Account.GetAccountSettings();

            accountSettings.ShouldNotBeNull();

            // Set IsInvisible to true
            var updateAccountSettings = new UpdateAccountSettingsRequest
            {
                IsInvisible = true
            };

            await client.Account.UpdateAccountSettings(updateAccountSettings);

            // Verify setting has been updated
            accountSettings = await client.Account.GetAccountSettings();

            accountSettings.ShouldNotBeNull();
            accountSettings.IsInvisible.ShouldBeTrue();

            // Set IsInvisible to false
            updateAccountSettings = new UpdateAccountSettingsRequest
            {
                IsInvisible = false
            };

            await client.Account.UpdateAccountSettings(updateAccountSettings);

            // Verify settings has been updated
            accountSettings = await client.Account.GetAccountSettings();

            accountSettings.ShouldNotBeNull();
            accountSettings.IsInvisible.ShouldBeFalse();
        }