Exemple #1
0
        private NameValueCollection MergeSeriesOpenSearchParameters()
        {
            NameValueCollection nvc = new NameValueCollection();

            foreach (Series s in series)
            {
                IOpenSearchEngineExtension osee = ose.GetFirstExtensionByTypeAbility(typeof(AtomFeed));
                //string type = OpenSearchFactory.GetBestQuerySettingsByNumberOfParam(s, osee).PreferredContentType;
                if (osee == null)
                {
                    context.LogError(this, "MultiSeries [{0}] : Series [{0}] does not expose a valid search template for transforming to Atom. Skipping it");
                    continue;
                }
                NameValueCollection nvc2 = s.GetOpenSearchParameters(s.DefaultMimeType);
                int i = 1;
                foreach (string param in nvc2.Keys)
                {
                    if (nvc2[param] == nvc[param])
                    {
                        continue;
                    }

                    if (nvc[param] == null)
                    {
                        nvc.Add(param, nvc2[param]);
                        continue;
                    }

                    if (nvc[param] != null)
                    {
                        nvc.Add(param + i++, nvc2[param]);
                        continue;
                    }
                }
            }

            return(nvc);
        }