Пример #1
0
 public SolrFieldNameTranslator(SolrSearchIndex solrSearchIndex)
 {
     this.index    = solrSearchIndex;
     this.fieldMap = solrSearchIndex.Configuration.FieldMap as SolrFieldMap;
     this.schema   = solrSearchIndex.Schema as SolrIndexSchema;
     this.settings = solrSearchIndex.Locator.GetInstance <ISettings>();
 }
        public AbstractFieldNameTranslator GetFieldNameTranslator(ISearchIndex index)
        {
            SolrFieldMap           fieldMap      = index.Configuration.FieldMap as SolrFieldMap;
            SolrIndexSchema        schema        = index.Schema as SolrIndexSchema;
            ISettings              instance      = index.Locator.GetInstance <ISettings>();
            SolrIndexConfiguration configuration = index.Configuration as SolrIndexConfiguration;

            Assert.IsNotNull(fieldMap, "FieldMap is null.");
            Assert.IsNotNull(schema, "SolrSchema is null.");
            Assert.IsNotNull(instance, "Settings is null.");
            Assert.IsNotNull(configuration, "This constructor requires SolrIndexConfiguration.");
            TemplateFieldTypeResolverFactory typeResolverFactory = configuration.TemplateFieldTypeResolverFactory;

            Assert.IsNotNull(typeResolverFactory, "normalizerFactory is null.");
            TemplateFieldTypeResolver fieldTypeResolver = typeResolverFactory.Create();

            Assert.IsNotNull(fieldTypeResolver, "FieldTypeResolver is null.");
            SolrFieldConfigurationResolver configurationResolver = new SolrFieldConfigurationResolver(fieldMap, schema, fieldTypeResolver);
            var ctor = typeof(SolrFieldNameTranslator).Assembly
                       .GetType("Sitecore.ContentSearch.SolrProvider.FieldNames.CultureContextGuard")
                       .GetConstructors().First();


            ICultureContextGuard cultureContextGuard = ObjectActivator.GetActivator <ICultureContextGuard>(ctor).Invoke();

            return(new SynthesisSolrFieldNameTranslator(fieldMap, schema, instance, configurationResolver, new ExtensionStripHelper(fieldMap, schema), typeResolverFactory, cultureContextGuard));
        }
 public SynthesisSolrFieldNameTranslator(SolrFieldMap solrFieldMap, SolrIndexSchema solrIndexSchema,
                                         ISettings settings, ISolrFieldConfigurationResolver fieldConfigurationResolver,
                                         IExtensionStripHelper extensionStripHelper, TemplateFieldTypeResolverFactory typeResolverFactory,
                                         ICultureContextGuard cultureContextGuard)
     : base(solrFieldMap, solrIndexSchema, settings, fieldConfigurationResolver, extensionStripHelper,
            typeResolverFactory, cultureContextGuard)
 {
     _schema = solrIndexSchema.SolrSchema;
 }
 public CustomSolrFieldNameTranslator(SolrSearchIndex solrSearchIndex)
     : base(solrSearchIndex)
 {
     this.fieldMap = solrSearchIndex.Configuration.FieldMap as SolrFieldMap;
 }