Scrublord1336 před 6 roky
rodič
revize
5af6935fc1

+ 48 - 39
src/XUnity.AutoTranslator.Plugin.Core/Web/WatsonTranslateEndpoint.cs

@@ -11,51 +11,60 @@ using XUnity.AutoTranslator.Plugin.Core.Extensions;
 
 namespace XUnity.AutoTranslator.Plugin.Core.Web
 {
-    public class WatsonTranslateEndpoint : KnownHttpEndpoint
-    {
-        private static readonly string HttpsServicePointTemplateUrl = Settings.WatsonAPIUrl.TrimEnd('/')+ "/v2/translate?model_id={0}-{1}&text={2}";
+   public class WatsonTranslateEndpoint : KnownWwwEndpoint
+   {
+      private static readonly string HttpsServicePointTemplateUrl = Settings.WatsonAPIUrl.TrimEnd( '/' ) + "/v2/translate?model_id={0}-{1}&text={2}";
 
-        public WatsonTranslateEndpoint()
-        {
-            ServicePointManager.ServerCertificateValidationCallback += Security.AlwaysAllowByHosts( new Uri( Settings.WatsonAPIUrl ).Host );
-        }
+      public WatsonTranslateEndpoint()
+      {
+         //ServicePointManager.ServerCertificateValidationCallback += Security.AlwaysAllowByHosts( new Uri( Settings.WatsonAPIUrl ).Host );
+      }
 
-      public override void ApplyHeaders( WebHeaderCollection headers )
+      public override void ApplyHeaders( Dictionary<string, string> headers )
       {
-         headers[ HttpRequestHeader.UserAgent ] = "curl/7.55.1";
-         headers[ HttpRequestHeader.Accept ] = "application/json";
-         headers[ HttpRequestHeader.AcceptCharset ] = "UTF-8";
-         headers[ HttpRequestHeader.Authorization ] = "Basic " + System.Convert.ToBase64String( System.Text.Encoding.ASCII.GetBytes( Settings.WatsonAPIUsername + ":" + Settings.WatsonAPIPassword ) );
+         headers[ "User-Agent" ] = "curl/7.55.1";
+         headers[ "Accept" ] = "application/json";
+         headers[ "Accept-Charset" ] = "UTF-8";
+         headers[ "Authorization" ] = "Basic " + System.Convert.ToBase64String( System.Text.Encoding.ASCII.GetBytes( Settings.WatsonAPIUsername + ":" + Settings.WatsonAPIPassword ) );
       }
 
-        public override bool TryExtractTranslated(string result, out string translated)
-        {
-            try
-            {
-                var obj = JSON.Parse(result);
-                var lineBuilder = new StringBuilder(result.Length);
-                
-                foreach (JSONNode entry in obj.AsObject["translations"].AsArray) {
-                    var token = entry.AsObject["translation"].ToString();
-                    token = token.Substring(1, token.Length - 2).UnescapeJson();
-
-                    if (!lineBuilder.EndsWithWhitespaceOrNewline()) lineBuilder.Append("\n");
-
-                    lineBuilder.Append(token);
-                }
-                translated = lineBuilder.ToString();               
-                return true;
-            }
-            catch (Exception)
+      //public override void ApplyHeaders( WebHeaderCollection headers )
+      //{
+      //   headers[ HttpRequestHeader.UserAgent ] = "curl/7.55.1";
+      //   headers[ HttpRequestHeader.Accept ] = "application/json";
+      //   headers[ HttpRequestHeader.AcceptCharset ] = "UTF-8";
+      //   headers[ HttpRequestHeader.Authorization ] = "Basic " + System.Convert.ToBase64String( System.Text.Encoding.ASCII.GetBytes( Settings.WatsonAPIUsername + ":" + Settings.WatsonAPIPassword ) );
+      //}
+
+      public override bool TryExtractTranslated( string result, out string translated )
+      {
+         try
+         {
+            var obj = JSON.Parse( result );
+            var lineBuilder = new StringBuilder( result.Length );
+
+            foreach( JSONNode entry in obj.AsObject[ "translations" ].AsArray )
             {
-                translated = null;
-                return false;
+               var token = entry.AsObject[ "translation" ].ToString();
+               token = token.Substring( 1, token.Length - 2 ).UnescapeJson();
+
+               if( !lineBuilder.EndsWithWhitespaceOrNewline() ) lineBuilder.Append( "\n" );
+
+               lineBuilder.Append( token );
             }
-        }
+            translated = lineBuilder.ToString();
+            return true;
+         }
+         catch( Exception )
+         {
+            translated = null;
+            return false;
+         }
+      }
 
-        public override string GetServiceUrl(string untranslatedText, string from, string to)
-        {            
-            return string.Format(HttpsServicePointTemplateUrl, from, to, WWW.EscapeURL(untranslatedText));
-        }
-    }
+      public override string GetServiceUrl( string untranslatedText, string from, string to )
+      {
+         return string.Format( HttpsServicePointTemplateUrl, from, to, WWW.EscapeURL( untranslatedText ) );
+      }
+   }
 }

+ 42 - 41
src/XUnity.AutoTranslator.Plugin.Core/Web/YandexTranslateEndpoint.cs

@@ -11,13 +11,13 @@ using XUnity.AutoTranslator.Plugin.Core.Extensions;
 
 namespace XUnity.AutoTranslator.Plugin.Core.Web
 {
-    public class YandexTranslateEndpoint : KnownHttpEndpoint
-    {
-        private static readonly string HttpsServicePointTemplateUrl = "https://translate.yandex.net/api/v1.5/tr.json/translate?key={3}&text={2}&lang={0}-{1}&format=plain";
-        public YandexTranslateEndpoint()
-        {
-            ServicePointManager.ServerCertificateValidationCallback += Security.AlwaysAllowByHosts( "translate.yandex.net" );
-        }
+   public class YandexTranslateEndpoint : KnownHttpEndpoint
+   {
+      private static readonly string HttpsServicePointTemplateUrl = "https://translate.yandex.net/api/v1.5/tr.json/translate?key={3}&text={2}&lang={0}-{1}&format=plain";
+      public YandexTranslateEndpoint()
+      {
+         ServicePointManager.ServerCertificateValidationCallback += Security.AlwaysAllowByHosts( "translate.yandex.net" );
+      }
 
       public override void ApplyHeaders( WebHeaderCollection headers )
       {
@@ -26,47 +26,48 @@ namespace XUnity.AutoTranslator.Plugin.Core.Web
          headers[ HttpRequestHeader.AcceptCharset ] = "UTF-8";
       }
 
-        public override bool TryExtractTranslated(string result, out string translated)
-        {
-            try
-            {
+      public override bool TryExtractTranslated( string result, out string translated )
+      {
+         try
+         {
 
-                var obj = JSON.Parse(result);
-                var lineBuilder = new StringBuilder(result.Length);
+            var obj = JSON.Parse( result );
+            var lineBuilder = new StringBuilder( result.Length );
 
-                var code = obj.AsObject["code"].ToString();
+            var code = obj.AsObject[ "code" ].ToString();
 
-                if (code == "200")
-                {
-                    var token = obj.AsObject["text"].ToString();
-                    token = token.Substring(2, token.Length - 4).UnescapeJson();
-                    if (String.IsNullOrEmpty(token))
-                    {
-                        translated = null;
-                        return false;
-                    }
+            if( code == "200" )
+            {
+               var token = obj.AsObject[ "text" ].ToString();
+               token = token.Substring( 2, token.Length - 4 ).UnescapeJson();
+               if( String.IsNullOrEmpty( token ) )
+               {
+                  translated = null;
+                  return false;
+               }
 
-                    if (!lineBuilder.EndsWithWhitespaceOrNewline()) lineBuilder.Append("\n");
-                    lineBuilder.Append(token);
+               if( !lineBuilder.EndsWithWhitespaceOrNewline() ) lineBuilder.Append( "\n" );
+               lineBuilder.Append( token );
 
-                    translated = lineBuilder.ToString();
-                    return true;
-                } else
-                {
-                    translated = null;
-                    return false;
-                }                
+               translated = lineBuilder.ToString();
+               return true;
             }
-            catch (Exception)
+            else
             {
-                translated = null;
-                return false;
+               translated = null;
+               return false;
             }
-        }
+         }
+         catch( Exception )
+         {
+            translated = null;
+            return false;
+         }
+      }
 
-        public override string GetServiceUrl(string untranslatedText, string from, string to)
-        {
-            return string.Format(HttpsServicePointTemplateUrl, from, to, WWW.EscapeURL(untranslatedText), Settings.YandexAPIKey);
-        }
-    }
+      public override string GetServiceUrl( string untranslatedText, string from, string to )
+      {
+         return string.Format( HttpsServicePointTemplateUrl, from, to, WWW.EscapeURL( untranslatedText ), Settings.YandexAPIKey );
+      }
+   }
 }