/// <summary> /// Instantiates the variables and fills the list file content into /// a Dictionary collection object. /// </summary> public MtTranslationProviderLanguageDirection(MtTranslationProvider provider, LanguagePair languages, HtmlUtil htmlUtil) { _provider = provider; _languageDirection = languages; _options = _provider.Options; _htmlUtil = htmlUtil; }
//This will be removed for the final version, we use it for testing public List <GoogleGlossary> GetProjectGlossaries(IMtTranslationOptions options) { var googleGlosaries = new List <GoogleGlossary>(); var request = new ListGlossariesRequest { ParentAsLocationName = new LocationName(options.ProjectName, options.ProjectLocation), PageSize = 50, }; try { var response = _translationServiceClient.ListGlossaries(request); var test = response.AsRawResponses(); foreach (var glossaryResponse in test) { foreach (var glossary in glossaryResponse) { } } } catch (Exception e) { _logger.Error($"{MethodBase.GetCurrentMethod().Name}: {e}"); throw; } return(googleGlosaries); }
private string LookupGt(string sourcetext, IMtTranslationOptions options, string format) { if (options.SelectedGoogleVersion == Enums.GoogleApiVersion.V2) { //instantiate GtApiConnecter if necessary if (_gtConnect == null) { // need to get and insert key _gtConnect = new MtTranslationProviderGTApiConnecter(options.ApiKey); //needs key } else { _gtConnect.ApiKey = options.ApiKey; //reset key in case it has been changed in dialog since GtApiConnecter was instantiated } var translatedText = _gtConnect.Translate(_languageDirection, sourcetext, format); return(translatedText); } _googleV3Connecter = new GoogleV3Connecter(options); var v3TranslatedText = _googleV3Connecter.TranslateText(_languageDirection.SourceCulture, _languageDirection.TargetCulture, sourcetext); return(v3TranslatedText); }
private string LookupMst(string sourcetext, IMtTranslationOptions options, string format) { var catId = ""; if (options.UseCatID) { catId = _options.CatId; //only use specific category ID if the option is selected } var sourcelang = _languageDirection.SourceCulture.ToString(); var targetlang = _languageDirection.TargetCulture.ToString(); //instantiate ApiConnecter if necessary if (_mstConnect == null) { _mstConnect = new ApiConnecter(_options.ClientId); } else { _mstConnect.ResetCrd(options.ClientId); //reset key in case it has been changed in dialog since GtApiConnecter was instantiated } var translatedText = _mstConnect.Translate(sourcelang, targetlang, sourcetext, catId); return(translatedText); }
public GoogleV3Connecter(IMtTranslationOptions options) { _options = options; SupportedLanguages = new List <GoogleV3LanguageModel>(); //We put by default NMT model if the nmt model is not supported for the language pair //Google knows to use basic model var model = "general/nmt"; if (!string.IsNullOrEmpty(_options.GoogleEngineModel)) { model = _options.GoogleEngineModel; } _modelPath = $"projects/{_options.ProjectName}/locations/{_options.ProjectLocation}/models/{model}"; if (!string.IsNullOrEmpty(_options.GlossaryPath)) { GlossaryId = Path.GetFileNameWithoutExtension(_options.GlossaryPath).Replace(" ", string.Empty); //Google doesn't allow spaces in glossary id _glossaryResourceLocation = $"projects/{_options.ProjectName}/locations/{_options.ProjectLocation}/glossaries/{GlossaryId}"; } try { Environment.SetEnvironmentVariable(PluginResources.GoogleApiEnvironmentVariableName, _options.JsonFilePath); _translationServiceClient = TranslationServiceClient.Create(); } catch (Exception e) { _logger.Error($"{MethodBase.GetCurrentMethod().Name}: {e}"); } }
/// <summary> /// Get saved key if there is one and put it into options /// </summary> private void SetSavedCredentialsOnUi(ITranslationProviderCredentialStore credentialStore, IMtTranslationOptions loadOptions) { //get google credentials var getCredGt = GetCredentialsFromStore(credentialStore, PluginResources.UriGt); if (getCredGt != null) { loadOptions.ApiKey = getCredGt.Credential; loadOptions.PersistGoogleKey = getCredGt.Persist; } //get microsoft credentials var getCredMt = GetCredentialsFromStore(credentialStore, PluginResources.UriMs); if (getCredMt != null) { try { loadOptions.ClientId = getCredMt.Credential; loadOptions.PersistMicrosoftCreds = getCredMt.Persist; } catch (Exception ex) //swallow b/c it will just fail to fill in instead of crashing the whole program { _logger.Error($"{MethodBase.GetCurrentMethod().Name} {ex.Message}\n {ex.StackTrace}"); } } }
public ProviderControlViewModel(IMtTranslationOptions options, RegionsProvider regionsProvider) { ViewModel = this; _options = options; _regionsProvider = regionsProvider; InitializeComponent(); }
public MainWindowViewModel(IMtTranslationOptions options, IProviderControlViewModel providerControlViewModel, ISettingsControlViewModel settingsControlViewModel, ITranslationProviderCredentialStore credentialStore, LanguagePair[] languagePairs, HtmlUtil htmlUtil) { Options = options; _providerControlViewModel = providerControlViewModel; _settingsControlViewModel = settingsControlViewModel; _credentialStore = credentialStore; _languagePairs = languagePairs; _htmlUtil = htmlUtil; SaveCommand = new RelayCommand(Save); ShowSettingsViewCommand = new CommandHandler(ShowSettingsPage, true); ShowMainViewCommand = new CommandHandler(ShowProvidersPage, true); providerControlViewModel.ShowSettingsCommand = ShowSettingsViewCommand; providerControlViewModel.ClearMessageRaised += ClearMessageRaised; settingsControlViewModel.ShowMainWindowCommand = ShowMainViewCommand; AvailableViews = new List <ViewDetails> { new ViewDetails { Name = PluginResources.PluginsView, ViewModel = providerControlViewModel.ViewModel }, new ViewDetails { Name = PluginResources.SettingsView, ViewModel = settingsControlViewModel.ViewModel } }; ShowProvidersPage(); }
public SettingsControlViewModel(IMtTranslationOptions options, IOpenFileDialogService openFileDialogService, bool isTellMeAction) { ViewModel = this; _options = options; IsTellMeAction = isTellMeAction; BrowseCommand = new RelayCommand(Browse); _openFileDialogService = openFileDialogService; SetSavedSettings(); }
public MtProviderConfDialog(IMtTranslationOptions options, bool isTellMeAction) { _isTellMeAction = isTellMeAction; uriMs = new Uri("mtenhancedprovidermst:///"); uriGt = new Uri("mtenhancedprovidergt:///"); Options = options; InitializeComponent(); UpdateDialog(); tabControl1.SelectedTab = tabPage3; tabPage1.Enabled = false; }
public MtProviderConfDialog(IMtTranslationOptions options, ITranslationProviderCredentialStore credentialStore, List <LanguagePair> correspondingLanguages) { this._credstore = credentialStore; uriMs = new Uri("mtenhancedprovidermst:///"); uriGt = new Uri("mtenhancedprovidergt:///"); Options = options; InitializeComponent(); UpdateDialog(); if (correspondingLanguages != null) { _correspondingLanguages = correspondingLanguages; } }
private void UpdateProviderCredentials(ITranslationProviderCredentialStore credentialStore, IMtTranslationOptions options) { switch (options.SelectedProvider) { case MtTranslationOptions.ProviderType.GoogleTranslate: SetCredentialsOnCredentialStore(credentialStore, PluginResources.UriGt, options.ApiKey, options.PersistGoogleKey); break; case MtTranslationOptions.ProviderType.MicrosoftTranslator: //set mst cred SetCredentialsOnCredentialStore(credentialStore, PluginResources.UriMs, options.ClientId, options.PersistMicrosoftCreds); break; } }
public MainWindowViewModel(IMtTranslationOptions options, ISettingsControlViewModel settingsControlViewModel, bool isTellMeAction) { Options = options; _isTellMeAction = isTellMeAction; _settingsControlViewModel = settingsControlViewModel; SaveCommand = new RelayCommand(Save); AvailableViews = new List <ViewDetails> { new ViewDetails { Name = PluginResources.SettingsView, ViewModel = settingsControlViewModel.ViewModel } }; if (_isTellMeAction) { SelectedView = AvailableViews[0]; } }
private MainWindowViewModel ShowProviderWindow(LanguagePair[] languagePairs, ITranslationProviderCredentialStore credentialStore, IMtTranslationOptions loadOptions, RegionsProvider regionsProvider) { SetSavedCredentialsOnUi(credentialStore, loadOptions); var dialogService = new OpenFileDialogService(); var providerControlVm = new ProviderControlViewModel(loadOptions, regionsProvider); var settingsControlVm = new SettingsControlViewModel(loadOptions, dialogService, false); var mainWindowVm = new MainWindowViewModel(loadOptions, providerControlVm, settingsControlVm, credentialStore, languagePairs); var mainWindow = new MainWindow { DataContext = mainWindowVm }; mainWindowVm.CloseEventRaised += () => { UpdateProviderCredentials(credentialStore, loadOptions); mainWindow.Close(); }; mainWindow.ShowDialog(); return(mainWindowVm); }
public ProviderControlViewModel(IMtTranslationOptions options) { ViewModel = this; _options = options; InitializeComponent(); }
public MtTranslationProvider(IMtTranslationOptions options, RegionsProvider regionProvider, HtmlUtil htmlUtil) { Options = options; RegionsProvider = regionProvider; _htmlUtil = htmlUtil; }
/// <summary> /// Instantiates the variables and fills the list file content into /// a Dictionary collection object. /// </summary> public MtTranslationProviderLanguageDirection(MtTranslationProvider provider, LanguagePair languages) { _provider = provider; _languageDirection = languages; _options = _provider.Options; }
public MtTranslationProvider(IMtTranslationOptions options, RegionsProvider regionProvider) { Options = options; RegionsProvider = regionProvider; }
public MtTranslationProvider(IMtTranslationOptions options) { Options = options; }