public void AddResource(string tmPath)
        {
            #region "open"
            FileBasedTranslationMemory tm = new FileBasedTranslationMemory(tmPath);
            #endregion

            #region "default"
            DefaultLanguageResourceProvider defaultBundle = new DefaultLanguageResourceProvider();
            #endregion

            #region "newBundle"
            LanguageResourceBundle newBundle = defaultBundle.GetDefaultLanguageResources(CultureInfo.GetCultureInfo("en-US"));
            #endregion

            #region "abbreviations"
            newBundle.Abbreviations = new Wordlist();
            newBundle.Abbreviations.Add("hr.");
            newBundle.Abbreviations.Add("cont.");
            #endregion

            #region "variables"
            newBundle.Variables = new Wordlist();
            newBundle.Variables.Add("Mac OSX");
            newBundle.Variables.Add("Microsoft Windows 7");
            newBundle.Variables.Add("Suse Linux");

            tm.LanguageResourceBundles.Add(newBundle);
            tm.Save();
            #endregion
        }
Example #2
0
        private void ReadFromExcel(ExcelPackage package, List <LanguageResourceBundle> newLanguageResourceBundles)
        {
            foreach (var workSheet in package.Workbook.Worksheets)
            {
                var column01 = workSheet.Cells[1, 1].Value;
                var column02 = workSheet.Cells[1, 2].Value;
                var column03 = workSheet.Cells[1, 3].Value;
                var column04 = workSheet.Cells[1, 4].Value;

                if (!AreColumnsValid(column01, column02, column03, column04))
                {
                    throw new Exception(PluginResources.Excel_spreadsheet_not_in_correct_format);
                }

                var abbreviations     = new Wordlist();
                var ordinalFollowers  = new Wordlist();
                var variables         = new Wordlist();
                var segmentationRules = new SegmentationRules();

                ReadFromExcel(workSheet, abbreviations, ordinalFollowers, variables, segmentationRules);

                var newLanguageResourceBundle =
                    new LanguageResourceBundle(CultureInfoExtensions.GetCultureInfo(workSheet.Name))
                {
                    Abbreviations     = abbreviations,
                    OrdinalFollowers  = ordinalFollowers,
                    Variables         = variables,
                    SegmentationRules = segmentationRules
                };

                newLanguageResourceBundles.Add(newLanguageResourceBundle);
            }
            ExcludeWhatIsNotNeeded(newLanguageResourceBundles);
            AddNewBundles(newLanguageResourceBundles);
        }
Example #3
0
        public List <LanguageResourceBundle> GetLanguageResourceBundlesFromFile(string resourceTemplatePath, out string message, out List <int> unIDedLanguages)
        {
            if (ValidateFile(resourceTemplatePath, out message, out unIDedLanguages, out var lrt))
            {
                return(null);
            }

            var langResBundlesList = new List <LanguageResourceBundle>();

            foreach (XmlNode res in lrt)
            {
                var cultureName = res?.Attributes?["CultureName"]?.Value;

                if (string.IsNullOrWhiteSpace(cultureName))
                {
                    continue;
                }
                var lr = langResBundlesList.FirstOrDefault(lrb => lrb.Language.Name == cultureName);

                if (lr == null)
                {
                    var culture = CultureInfoExtensions.GetCultureInfo(cultureName);

                    lr = new LanguageResourceBundle(culture);
                    langResBundlesList.Add(lr);
                }

                AddLanguageResourceToBundle(lr, res);
            }

            return(langResBundlesList);
        }
        public void CreateTemplate(TranslationProviderServer tmServer)
        {
            #region "TemplateProps"
            ServerBasedLanguageResourcesTemplate template = new ServerBasedLanguageResourcesTemplate(tmServer);
            template.Name        = "Sample Language Resources Template";
            template.Description = "Language Resources template created through API";
            #endregion

            #region "variables"
            LanguageResourceBundle variables = new LanguageResourceBundle(CultureInfo.GetCultureInfo("en-US"));
            variables.Variables.Add("SDL Trados Studio 2009");
            variables.Variables.Add("SDL MultiTerm 2009");
            #endregion

            #region "abbreviations"
            LanguageResourceBundle abbreviations = new LanguageResourceBundle(CultureInfo.GetCultureInfo("en-US"));
            abbreviations.Abbreviations.Add("hr.");
            abbreviations.Abbreviations.Add("cont.");
            #endregion

            #region "AddResources"
            template.LanguageResourceBundles.Add(variables);
            template.LanguageResourceBundles.Add(abbreviations);
            #endregion

            #region "save"
            template.Save();
            MessageBox.Show("Unsaved changes? " + template.IsDirty.ToString());
            #endregion

            #region "delete"
            template.Delete();
            #endregion
        }
Example #5
0
        private void AddSegmentationRulesToBundle(LanguageResourceBundle newBundle, LanguageResourceBundle correspondingBundleInTemplate)
        {
            if (newBundle.SegmentationRules != null)
            {
                if (correspondingBundleInTemplate.SegmentationRules != null)
                {
                    foreach (var newRule in newBundle.SegmentationRules.Rules)
                    {
                        if (!correspondingBundleInTemplate.SegmentationRules.Rules.Any(oldRule =>
                                                                                       string.Equals(newRule.Description.Text, oldRule.Description.Text,
                                                                                                     StringComparison.OrdinalIgnoreCase)))
                        {
                            correspondingBundleInTemplate.SegmentationRules.AddRule(newRule);
                        }
                    }
                }
                else
                {
                    correspondingBundleInTemplate.SegmentationRules = newBundle.SegmentationRules;
                }
            }

            if (correspondingBundleInTemplate.SegmentationRules.Count == 0)
            {
                correspondingBundleInTemplate.SegmentationRules = null;
            }
        }
Example #6
0
        private static void AddSegmentationRulesToBundle(LanguageResourceBundle newBundle, LanguageResourceBundle correspondingBundleInTemplate)
        {
            if (newBundle.SegmentationRules == null)
            {
                return;
            }
            if (correspondingBundleInTemplate.SegmentationRules != null)
            {
                var newSegmentationRules = new SegmentationRules();
                foreach (var newRule in newBundle.SegmentationRules.Rules)
                {
                    if (correspondingBundleInTemplate.SegmentationRules.Rules.All(oldRule =>
                                                                                  !string.Equals(newRule.Description.Text, oldRule.Description.Text,
                                                                                                 StringComparison.OrdinalIgnoreCase)))
                    {
                        newSegmentationRules.AddRule(newRule);
                    }
                }

                correspondingBundleInTemplate.SegmentationRules.Rules.AddRange(newSegmentationRules.Rules);
            }
            else
            {
                correspondingBundleInTemplate.SegmentationRules = new SegmentationRules(newBundle.SegmentationRules);
            }
        }
Example #7
0
        private void AddMeasurementUnits(LanguageResourceBundle newBundle, LanguageResourceBundle correspondingBundleInTemplate)
        {
            if (newBundle.MeasurementUnits != null)
            {
                if (correspondingBundleInTemplate.MeasurementUnits != null)
                {
                    foreach (var unit in newBundle.MeasurementUnits)
                    {
                        if (!correspondingBundleInTemplate.MeasurementUnits.ContainsKey(unit.Key))
                        {
                            correspondingBundleInTemplate.MeasurementUnits.Add(unit.Key, unit.Value);
                        }
                    }
                }
                else
                {
                    correspondingBundleInTemplate.MeasurementUnits = newBundle.MeasurementUnits;
                }
            }

            if (correspondingBundleInTemplate.MeasurementUnits.Count == 0)
            {
                correspondingBundleInTemplate.MeasurementUnits = null;
            }
        }
        //public string GetValueFromCell();

        private LanguageResourceBundle GetFromExcel(ExcelWorksheet workSheet, CultureInfo cultureInfo)
        {
            var cells = workSheet.Cells;

            var languageResourceBundle =
                new LanguageResourceBundle(cultureInfo)
            {
                Abbreviations     = new Wordlist(),
                OrdinalFollowers  = new Wordlist(),
                Variables         = new Wordlist(),
                SegmentationRules = new SegmentationRules(),
                LongDateFormats   = new List <string>(),
                ShortDateFormats  = new List <string>(),
                LongTimeFormats   = new List <string>(),
                ShortTimeFormats  = new List <string>(),
                NumbersSeparators = new List <SeparatorCombination>(),
                MeasurementUnits  = new Dictionary <string, CustomUnitDefinition>(),
                CurrencyFormats   = new List <CurrencyFormat>()
            };

            for (var i = 2; i <= workSheet.Dimension.End.Row; i++)
            {
                var abbreviation = cells[i, 1]?.Value?.ToString();
                AddToWordlist(abbreviation, languageResourceBundle.Abbreviations);

                var ordinalFollower = cells[i, 2]?.Value?.ToString();
                AddToWordlist(ordinalFollower, languageResourceBundle.OrdinalFollowers);

                var variable = cells[i, 3]?.Value?.ToString();
                AddToWordlist(variable, languageResourceBundle.Variables);

                var serializedData = cells[i, 4]?.Value?.ToString();
                AddSegmentationRule(serializedData, languageResourceBundle.SegmentationRules.Rules);

                var longDate = cells[i, 5]?.Value?.ToString();
                AddDateFormat(longDate, languageResourceBundle.LongDateFormats);

                var shortDate = cells[i, 6]?.Value?.ToString();
                AddDateFormat(shortDate, languageResourceBundle.ShortDateFormats);

                var longTime = cells[i, 7]?.Value?.ToString();
                AddDateFormat(longTime, languageResourceBundle.LongTimeFormats);

                var shortTime = cells[i, 8]?.Value?.ToString();
                AddDateFormat(shortTime, languageResourceBundle.ShortTimeFormats);

                serializedData = cells[i, 9]?.Value?.ToString();
                AddNumberSeparator(serializedData, languageResourceBundle.NumbersSeparators);

                var unit = cells[i, 10]?.Value?.ToString();
                AddMeasurementUnits(unit, languageResourceBundle.MeasurementUnits);

                serializedData = cells[i, 11]?.Value?.ToString();
                AddCurrencies(serializedData, languageResourceBundle.CurrencyFormats);
            }

            return(languageResourceBundle);
        }
Example #9
0
 private void AddWordlists(LanguageResourceBundle correspondingBundleInTemplate, LanguageResourceBundle newBundle)
 {
     correspondingBundleInTemplate.Abbreviations =
         AddItemsToWordlist(newBundle.Abbreviations, correspondingBundleInTemplate.Abbreviations);
     correspondingBundleInTemplate.OrdinalFollowers =
         AddItemsToWordlist(newBundle.OrdinalFollowers, correspondingBundleInTemplate.OrdinalFollowers);
     correspondingBundleInTemplate.Variables =
         AddItemsToWordlist(newBundle.Variables, correspondingBundleInTemplate.Variables);
 }
Example #10
0
        private void AddLanguageResourceToBundle(LanguageResourceBundle langResBundle, XmlNode resource)
        {
            if (resource?.Attributes?["Type"].Value == "Variables")
            {
                var vars = Encoding.UTF8.GetString(Convert.FromBase64String(resource.InnerText));

                langResBundle.Variables = new Wordlist();

                foreach (Match s in Regex.Matches(vars, @"([^\s]+)"))
                {
                    langResBundle.Variables.Add(s.ToString());
                }

                return;
            }

            if (resource?.Attributes?["Type"].Value == "Abbreviations")
            {
                var abbrevs = Encoding.UTF8.GetString(Convert.FromBase64String(resource.InnerText));

                langResBundle.Abbreviations = new Wordlist();

                foreach (Match s in Regex.Matches(abbrevs, @"([^\s]+)"))
                {
                    langResBundle.Abbreviations.Add(s.ToString());
                }

                return;
            }

            if (resource?.Attributes?["Type"].Value == "OrdinalFollowers")
            {
                var ordFollowers = Encoding.UTF8.GetString(Convert.FromBase64String(resource.InnerText));

                langResBundle.OrdinalFollowers = new Wordlist();

                foreach (Match s in Regex.Matches(ordFollowers, @"([^\s]+)"))
                {
                    langResBundle.OrdinalFollowers.Add(s.ToString());
                }

                return;
            }

            if (resource?.Attributes?["Type"].Value == "SegmentationRules")
            {
                var segRules = Convert.FromBase64String(resource.InnerText);

                var stream = new MemoryStream(segRules);

                var segmentRules = SegmentationRules.Load(stream,
                                                          CultureInfo.GetCultureInfo(langResBundle.Language.LCID), null);

                langResBundle.SegmentationRules = segmentRules;
            }
        }
        private LanguageResourceBundle CreateDefaultBundle(CultureInfo cultureInfo)
        {
            //we can either create a bundle from scratch or use DefaultLanguageResourceProvider which allows us to access the default list
            DefaultLanguageResourceProvider defaultProvider = new DefaultLanguageResourceProvider();
            //as working with file based TM, we will create a bundle for source language
            LanguageResourceBundle bundle = defaultProvider.GetDefaultLanguageResources(cultureInfo);

            bundle.Abbreviations = new Sdl.LanguagePlatform.Core.Wordlist();
            bundle.Abbreviations.Add("SDL");
            return(bundle);
        }
        public void AddLanguageResourceToBundle(LanguageResourceBundle langResBundle)
        {
            var segRules = Encoding.UTF8.GetString(Convert.FromBase64String(_resource.InnerText));

            var xmlSerializer = new XmlSerializer(typeof(SegmentationRules));

            var stringReader = new StringReader(segRules);
            var segmentRules = (SegmentationRules)xmlSerializer.Deserialize(stringReader);

            langResBundle.SegmentationRules = segmentRules;
        }
Example #13
0
 private void InitializeBundle(LanguageResourceBundle correspondingBundleInTemplate)
 {
     foreach (var propertyInfo in typeof(LanguageResourceBundle).GetProperties())
     {
         if (propertyInfo.CanWrite)
         {
             if (propertyInfo.GetValue(correspondingBundleInTemplate) == null)
             {
                 propertyInfo.SetValue(correspondingBundleInTemplate, Activator.CreateInstance(propertyInfo.PropertyType));
             }
         }
     }
 }
Example #14
0
        /// <summary>
        /// Adapt language resource bundle, add a new abbreviations
        /// </summary>
        /// <param name="languageResourceBundleCollection"></param>
        private void AdaptLanguageResourceBundles(LanguageResourceBundleCollection languageResourceBundleCollection)
        {
            //we can either create a bundle from scratch or use DefaultLanguageResourceProvider which allows us to access the default list
            DefaultLanguageResourceProvider defaultProvider = new DefaultLanguageResourceProvider();
            //as working with file based TM, we will create a bundle for source language
            LanguageResourceBundle bundle = defaultProvider.GetDefaultLanguageResources(CultureInfo.GetCultureInfo("en-US"));

            bundle.Abbreviations.Add("SDK");
            bundle.Abbreviations.Add("SDL");

            languageResourceBundleCollection.Add(bundle);

            WriteResult("A custom abbreviations added\r\n");
        }
Example #15
0
        public List <LanguageResourceBundle> GetLanguageResourceBundlesFromFile(string resourceTemplatePath, out string message, out List <int> unIDedLanguages)
        {
            if (ValidateFile(resourceTemplatePath, out message, out unIDedLanguages, out var lrt))
            {
                return(null);
            }

            var langResBundlesList = new List <LanguageResourceBundle>();

            foreach (XmlNode res in lrt)
            {
                var successful = int.TryParse(res?.Attributes?["Lcid"]?.Value, out var lcid);

                if (!successful)
                {
                    continue;
                }
                var lr = langResBundlesList.FirstOrDefault(lrb => lrb.Language.LCID == lcid);

                if (lr == null)
                {
                    CultureInfo culture;

                    try
                    {
                        culture = CultureInfoExtensions.GetCultureInfo(lcid);
                        if (CultureInfo.GetCultures(CultureTypes.AllCultures).Where(ci => ci.LCID == lcid).ToList().Count > 1)
                        {
                            throw new Exception();
                        }
                    }
                    catch (Exception)
                    {
                        if (!unIDedLanguages.Exists(id => id == lcid))
                        {
                            unIDedLanguages.Add(lcid);
                        }
                        continue;
                    }

                    lr = new LanguageResourceBundle(culture);
                    langResBundlesList.Add(lr);
                }

                AddLanguageResourceToBundle(lr, res);
            }

            return(langResBundlesList);
        }
        public void AddLanguageResourceToBundle(LanguageResourceBundle langResBundle)
        {
            var vars = Encoding.UTF8.GetString(Convert.FromBase64String(_resource.InnerText));

            var langResBundleSetter = typeof(LanguageResourceBundle).GetProperty(_propertyName)?.SetMethod;

            langResBundleSetter?.Invoke(langResBundle, new[] { new Wordlist() });

            var langResBundleGetter = (typeof(LanguageResourceBundle).GetProperty(_propertyName)?.GetMethod.Invoke(langResBundle, null) as Wordlist);

            foreach (Match s in Regex.Matches(vars, @"([^\s]+)"))
            {
                langResBundleGetter?.Add(s.ToString());
            }
        }
Example #17
0
        private void AddSimpleResources(LanguageResourceBundle correspondingBundleInTemplate, LanguageResourceBundle newBundle)
        {
            correspondingBundleInTemplate.LongDateFormats = GetUnionOfListsOfObjects(newBundle.LongDateFormats,
                                                                                     correspondingBundleInTemplate.LongDateFormats);
            correspondingBundleInTemplate.ShortDateFormats = GetUnionOfListsOfObjects(newBundle.ShortDateFormats,
                                                                                      correspondingBundleInTemplate.ShortDateFormats);
            correspondingBundleInTemplate.LongTimeFormats = GetUnionOfListsOfObjects(newBundle.LongTimeFormats,
                                                                                     correspondingBundleInTemplate.LongTimeFormats);
            correspondingBundleInTemplate.ShortTimeFormats = GetUnionOfListsOfObjects(newBundle.ShortTimeFormats,
                                                                                      correspondingBundleInTemplate.ShortTimeFormats);

            correspondingBundleInTemplate.NumbersSeparators = GetUnionOfListsOfObjects(newBundle.NumbersSeparators,
                                                                                       correspondingBundleInTemplate.NumbersSeparators);
            correspondingBundleInTemplate.CurrencyFormats = GetUnionOfListsOfObjects <CurrencyFormat>(newBundle.CurrencyFormats,
                                                                                                      correspondingBundleInTemplate.CurrencyFormats, new CurrencyComparer());
        }
        public void GetTemplates(TranslationProviderServer tmServer)
        {
            #region "LoopTemplates"
            string templateList = string.Empty;
            foreach (ServerBasedLanguageResourcesTemplate template in tmServer.GetLanguageResourcesTemplates(LanguageResourcesTemplateProperties.All))
            #endregion
            {
                #region "info"
                templateList += "Template name: " + template.Name + "\n";
                templateList += "Description: " + template.Description + "\n";
                #endregion
                #region "VarCount"
                LanguageResourceBundle bundle = template.LanguageResourceBundles[0];
                templateList += "Number of variables in template: " + bundle.Variables.Count.ToString() + "\n\n";
                #endregion
            }

            MessageBox.Show(templateList, "Available language resources remplates");
        }
Example #19
0
        private void CopyTmLanguageResources(FileBasedTranslationMemory templateTm, FileBasedTranslationMemory tm)
        {
            ITranslationMemoryLanguageDirection languageDirection = tm.LanguageDirection;

            // Copy any sourcelanguage resources from the template tm to the new tm
            LanguageResourceBundle sourceLanguageBundle = templateTm.LanguageResourceBundles[languageDirection.SourceLanguage];

            if (sourceLanguageBundle != null)
            {
                tm.LanguageResourceBundles.Add(sourceLanguageBundle.Clone());
            }

            // Copy any target language resources from the template tm to the new tm
            LanguageResourceBundle targetLanguageBundle = templateTm.LanguageResourceBundles[languageDirection.TargetLanguage];

            if (targetLanguageBundle != null)
            {
                tm.LanguageResourceBundles.Add(targetLanguageBundle.Clone());
            }
        }
Example #20
0
 public void TransferResourcesFromBundle(Settings settings, LanguageResourceBundle sourceBundle, LanguageResourceBundle targetBundle)
 {
     //TODO: this method would be very useful if there would be a class for each resource and we could just Invoke the class' method for adding each specific type
     if (targetBundle == null)
     {
         return;
     }
     foreach (var propertyInfo in typeof(Settings).GetProperties())
     {
         if (propertyInfo.CanWrite)
         {
             if ((bool)propertyInfo.GetValue(settings))
             {
                 var property = targetBundle?.GetType().GetProperties()
                                .Where(prop => prop.Name.Contains(propertyInfo.Name.Substring(0, 4)));
                 property?.ToList().ForEach(bundleProp => bundleProp?.SetValue(targetBundle, bundleProp.GetValue(sourceBundle)));
             }
         }
     }
 }
Example #21
0
        public void ApplyTmTemplate(List <TranslationMemory> translationMemories)
        {
            var resourceBundlesWithOptions = new List <LanguageResourceBundle>();

            foreach (var resourceBundle in LanguageResourceBundles)
            {
                var newResourceBundle = new LanguageResourceBundle(resourceBundle.Language);

                if (_settings.VariablesChecked)
                {
                    newResourceBundle.Variables = resourceBundle.Variables;
                }

                if (_settings.AbbreviationsChecked)
                {
                    newResourceBundle.Abbreviations = resourceBundle.Abbreviations;
                }

                if (_settings.OrdinalFollowersChecked)
                {
                    newResourceBundle.OrdinalFollowers = resourceBundle.OrdinalFollowers;
                }

                if (_settings.SegmentationRulesChecked)
                {
                    newResourceBundle.SegmentationRules = resourceBundle.SegmentationRules;
                }

                resourceBundlesWithOptions.Add(newResourceBundle);
            }

            foreach (var languageResourceBundle in resourceBundlesWithOptions)
            {
                foreach (var translationMemory in translationMemories)
                {
                    translationMemory.ApplyTemplate(languageResourceBundle);
                }
            }
        }
Example #22
0
        private static void AddItemsToWordlist(LanguageResourceBundle newLanguageResourceBundle, LanguageResourceBundle template, string property)
        {
            var templateBundleGetter = typeof(LanguageResourceBundle).GetProperty(property)?.GetMethod.Invoke(template, null) as Wordlist;
            var templateBundleSetter = typeof(LanguageResourceBundle).GetProperty(property)?.SetMethod;
            var newBundleGetter      = typeof(LanguageResourceBundle).GetProperty(property)?.GetMethod.Invoke(newLanguageResourceBundle, null) as Wordlist;

            if (newBundleGetter == null || !newBundleGetter.Items.Any())
            {
                return;
            }

            if (templateBundleGetter != null && templateBundleGetter.Items.Any())
            {
                foreach (var abbrev in newBundleGetter.Items)
                {
                    templateBundleGetter.Add(abbrev);
                }
            }
            else
            {
                templateBundleSetter?.Invoke(template, new[] { new Wordlist(newBundleGetter) });
            }
        }
Example #23
0
        private void AddLanguageResourceToBundle(LanguageResourceBundle langResBundle, XmlNode resource)
        {
            var allResourceTypes = new List <string>()
            {
                "Variables", "Abbreviations", "OrdinalFollowers"
            };

            var resourceAdder = new Resource();

            foreach (var resourceType in allResourceTypes)
            {
                if (resourceType == resource?.Attributes?["Type"].Value)
                {
                    resourceAdder.SetResourceType(new WordlistResource(resource, resourceType));
                    resourceAdder.AddLanguageResourceToBundle(langResBundle);
                }
            }

            if (resource?.Attributes?["Type"].Value == "SegmentationRules")
            {
                resourceAdder.SetResourceType(new SegmentationRulesResource(resource));
                resourceAdder.AddLanguageResourceToBundle(langResBundle);
            }
        }
Example #24
0
        private void AddNewBundles(List <LanguageResourceBundle> newLanguageResourceBundles, ILanguageResourcesContainer languageResourcesContainer)
        {
            foreach (var newBundle in newLanguageResourceBundles)
            {
                if (newBundle == null)
                {
                    continue;
                }

                var correspondingBundleInTemplate = languageResourcesContainer.LanguageResourceBundles[newBundle.Language];
                if (correspondingBundleInTemplate == null)
                {
                    correspondingBundleInTemplate = new LanguageResourceBundle(newBundle.Language);
                    languageResourcesContainer.LanguageResourceBundles.Add(correspondingBundleInTemplate);
                }
                //to be able to deal with all the resources uniformly and easily, we must ensure that none are null
                InitializeBundle(correspondingBundleInTemplate);

                AddWordlists(correspondingBundleInTemplate, newBundle);
                AddSegmentationRulesToBundle(newBundle, correspondingBundleInTemplate);
                AddSimpleResources(correspondingBundleInTemplate, newBundle);
                AddMeasurementUnits(newBundle, correspondingBundleInTemplate);
            }
        }
Example #25
0
 public void AddLanguageResourceToBundle(LanguageResourceBundle langResBundle)
 {
     _resourceType.AddLanguageResourceToBundle(langResBundle);
 }