コード例 #1
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private static void Main(string[] args)
        {
            GetCredentials();
            var authApiClient    = new AuthApiClient(userIdentifier, userSecret);
            var auth             = new OAuthAuthenticationStrategy(authApiClient);
            var fileApiClient    = new FileApiClient(auth, projectId, string.Empty);
            var projectApiClient = new ProjectApiClient(auth, projectId);

            fileApiClient.ApiGatewayUrl = "https://api.smartling.com";
            string fileName = "ApiSample_" + Guid.NewGuid();
            string fileUri  = "/master/" + fileName;

            Upload(fileApiClient, fileUri, fileName, "xml");
            Download(fileApiClient, fileUri);
            Submissions(auth);
            Audit(auth);
            Jobs(auth);
            Published(auth);
            GetProjectData(projectApiClient);
            List(fileApiClient);
            Status(fileApiClient, fileUri, "ru-RU");
            LastModified(fileApiClient, fileUri);
            Authorization(fileApiClient);
            Deletion(fileApiClient, fileUri);
            CloudLog();

            Console.WriteLine("All done, press any key to exit");
            Console.ReadKey();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private static void Download(FileApiClient fileClient, string fileUri)
        {
            Console.WriteLine("Download...");
            var downloadedFile = fileClient.GetFile(fileUri, "ru-RU", "pseudo");
            var fileStream     = fileClient.GetFileStream(fileUri, "ru-RU");

            Console.WriteLine(downloadedFile);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        /// <summary>
        /// It is also possible to upload file content directly:
        /// var fileContents = File.ReadAllText(@"C:\Sample.xml");
        /// var status = client.UploadFileContents(fileContents, fileUri, fileType, "ru-RU,fr-FR", true);
        /// </summary>
        /// <param name="client"></param>
        /// <param name="fileUri"></param>
        /// <param name="fileType"></param>
        private static void Upload(FileApiClient client, string fileUri, string filePath, string fileType)
        {
            Console.WriteLine(string.Empty);
            Console.WriteLine("Uploading file...");

            var status = client.UploadFile(@"C:\Sample.xml", fileUri, fileType, "ru-RU,es", true, filePath);

            Console.WriteLine(status.stringCount);
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private static void LastModified(FileApiClient fileClient, string fileUri)
        {
            var lastModified       = fileClient.GetLastModified(fileUri);
            var lastModifiedDetail = fileClient.GetLastModified(fileUri, "ru-RU");

            Console.WriteLine("Last modified...");
            Console.WriteLine(lastModified.totalCount);
            Console.WriteLine(lastModifiedDetail.lastModified);
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private static void Status(FileApiClient client, string fileUri, string locale)
        {
            Console.WriteLine(string.Empty);
            Console.WriteLine("Retrieving file...");
            var status           = client.GetFileStatus(fileUri, locale);
            var fileStatusDetail = client.GetFileStatus(fileUri, "ru-RU");

            Console.WriteLine(status.fileUri);
            Console.WriteLine(fileStatusDetail.totalWordCount);
        }
コード例 #6
0
        public void ShouldSetUserAgent()
        {
            // Arrange
            var auth   = GetAuth();
            var client = new FileApiClient(auth, "test", "test");

            // Act
            var request = (HttpWebRequest)client.PrepareGetRequest("http://smartling.com", "test");

            // Assert
            var version   = Assembly.GetAssembly(typeof(FileApiClient)).GetName().Version.ToString();
            var userAgent = string.Format("smartling-api-sdk-net/{0}", version);

            Assert.AreEqual(userAgent, request.UserAgent);
        }
コード例 #7
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private static void List(FileApiClient client)
        {
            Console.WriteLine(string.Empty);
            Console.WriteLine("Listing files...");
            var list = client.GetFilesList().ToList();

            foreach (var file in list)
            {
                Console.WriteLine(file.fileUri + " " + file.hasInstructions + " " + file.lastUploaded);
            }

            foreach (var file in list.Take(10))
            {
                Status(client, file.fileUri, "ru-RU");
            }
        }
コード例 #8
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
        private void DeleteAllFiles(FileApiClient client)
        {
            Console.WriteLine("Done. Press 'd' to delete all files before exiting. Press any other key to just exit.");

            var key = Console.ReadKey();

            if (key.KeyChar == 'd')
            {
                var files = client.GetFilesList();
                foreach (var file in files)
                {
                    client.DeleteFile(file.fileUri);
                    Console.WriteLine("Deleted file: " + file.fileUri);
                }

                Console.WriteLine("All files were deleted. Press any key to exit.");
                Console.ReadKey();
            }
        }
コード例 #9
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
 private static void Authorization(FileApiClient fileClient)
 {
     fileClient.Authorize("Sample.xml", "de-DE,fr-FR");
     fileClient.Unauthorize("Sample.xml", "fr-FR");
 }
コード例 #10
0
ファイル: Program.cs プロジェクト: Smartling/api-sdk-net
 private static void Deletion(FileApiClient fileClient, string fileUri)
 {
     Console.WriteLine("Deleting file...");
     fileClient.DeleteFile(fileUri);
 }