//private MapFieldSelector fieldSelector; public AzureSearchResults(AzureSearchContext context, AzureQuery query, DocumentSearchResult searchHits, int startIndex, int endIndex, SelectMethod selectMethod, IEnumerable <IExecutionContext> executionContexts, IEnumerable <IFieldQueryTranslator> virtualFieldProcessors, FieldNameTranslator fieldNameTranslator) { this.context = context; this.query = query; this.searchHits = searchHits; this.startIndex = startIndex; this.endIndex = endIndex; this.selectMethod = selectMethod; this.virtualFieldProcessors = virtualFieldProcessors; this.fieldNameTranslator = fieldNameTranslator; this.configuration = (AzureIndexConfiguration)context.Index.Configuration; //this.fieldSelector = (MapFieldSelector)null; this.executionContexts = executionContexts; var executionContext = this.executionContexts != null?Enumerable.FirstOrDefault <IExecutionContext>(this.executionContexts, (Func <IExecutionContext, bool>)(c => c is OverrideExecutionContext <IIndexDocumentPropertyMapper <Document> >)) as OverrideExecutionContext <IIndexDocumentPropertyMapper <Document> > : (OverrideExecutionContext <IIndexDocumentPropertyMapper <Document> >)null; this.mapper = (executionContext != null ? executionContext.OverrideObject : null) ?? this.configuration.IndexDocumentPropertyMapper; //if (selectMethod != null && selectMethod.FieldNames != null && selectMethod.FieldNames.Length > 0) //{ // this.fieldSelector = this.GetMapFieldSelector(context, (IEnumerable<string>)selectMethod.FieldNames); //} //else //{ // if (this.selectMethod != null) // return; // IEnumerable<string> documentFieldsToRead = this.mapper.GetDocumentFieldsToRead<TElement>(executionContexts); // this.fieldSelector = this.GetMapFieldSelector(context, documentFieldsToRead); //} }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap<IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext executionContext) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, new IExecutionContext[1] { executionContext }, (IFieldMapReaders)null) { }
public MetadataGenerator(GeneratorParameters parameters, ITemplateInputProvider templateProvider, IFieldMappingProvider fieldMappingProvider, FieldNameTranslator indexFieldNameTranslator) { parameters.Validate(); _parameters = parameters; _templateInputProvider = templateProvider; _fieldMappingProvider = fieldMappingProvider; _indexFieldNameTranslator = indexFieldNameTranslator; }
public ElasticQueryMapper(ElasticIndexParameters parameters) { if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } Parameters = parameters; ValueFormatter = parameters.ValueFormatter; FieldQueryTranslators = parameters.FieldQueryTranslators; FieldNameTranslator = parameters.FieldNameTranslator; }
public FacetLinqToSolrIndex(SolrSearchContext context, IExecutionContext executionContext) : base(context, executionContext) { Assert.ArgumentNotNull(context, "context"); this._context = context; this._settings = context.Index.Locator.GetInstance <ISettings>(); this._contentSearchSettings = context.Index.Locator.GetInstance <IContentSearchConfigurationSettings>(); var executionContext1 = this.Parameters.ExecutionContext as CultureExecutionContext; var culture = executionContext1 == null?CultureInfo.GetCultureInfo(Settings.DefaultLanguage) : executionContext1.Culture; this._cultureCode = culture.TwoLetterISOLanguageName; ((SolrFieldNameTranslator)this.Parameters.FieldNameTranslator).AddCultureContext(culture); this.PublicFieldNameTranslator = this.FieldNameTranslator; }
public Generator(GeneratorParameters parameters, ITemplateInputProvider templateProvider, ITemplateSignatureProvider templateSignatureProvider, IFieldMappingProvider fieldMappingProvider, FieldNameTranslator indexFieldNameTranslator) { parameters.Validate(); Parameters = parameters; _templateInputProvider = templateProvider; _templateSignatureProvider = templateSignatureProvider; _fieldMappingProvider = fieldMappingProvider; _indexFieldNameTranslator = indexFieldNameTranslator; // load the templates we'll be generating into a state storage collection var templates = templateProvider.CreateTemplateList(); Templates = new TemplateGenerationInfoCollection(parameters.UseTemplatePathForNamespace, parameters.TemplatePathRoot); foreach (var template in templates) Templates.Add(template); }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap<IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, Func<string, IAzureSearchFieldConfiguration> getFieldConfiguration, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap, bool convertQueryDatesToUtc) { if (valueFormatter == null) throw new ArgumentNullException("valueFormatter"); if (fieldQueryTranslators == null) throw new ArgumentNullException("fieldQueryTranslators"); if (fieldNameTranslator == null) throw new ArgumentNullException("fieldNameTranslator"); this.ValueFormatter = valueFormatter; this.FieldQueryTranslators = fieldQueryTranslators; this.FieldNameTranslator = fieldNameTranslator; this.ExecutionContexts = executionContexts ?? new IExecutionContext[0]; this.FieldMap = fieldMap; this.getFieldConfiguration = getFieldConfiguration; this.getFieldConfiguration = getFieldConfiguration; this.ConvertQueryDatesToUtc = convertQueryDatesToUtc; }
// Methods public ElasticSearchIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext executionContext) { if (valueFormatter == null) { throw new ArgumentNullException("valueFormatter"); } if (fieldQueryTranslators == null) { throw new ArgumentNullException("fieldQueryTranslators"); } if (fieldNameTranslator == null) { throw new ArgumentNullException("fieldNameTranslator"); } ValueFormatter = valueFormatter; FieldNameTranslator = fieldNameTranslator; FieldQueryTranslators = fieldQueryTranslators; ExecutionContext = executionContext; }
public CustomContractResolver(Type type, FieldNameTranslator fieldNameTranslator) { PropertyMappings.Add("score", "score"); _fieldNameTranslator = fieldNameTranslator; var props = type.GetProperties(); foreach (var prop in props) { if (Attribute.IsDefined(prop, typeof(IndexFieldAttribute))) { var fieldName = _fieldNameTranslator.GetIndexFieldName(prop); var key = prop.Name.ToLower(); if (!PropertyMappings.ContainsKey(key)) { PropertyMappings.Add(key, fieldName); } } } }
public ElasticIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap) { if (valueFormatter == null) { throw new ArgumentNullException(nameof(valueFormatter)); } if (fieldQueryTranslators == null) { throw new ArgumentNullException(nameof(fieldQueryTranslators)); } if (fieldNameTranslator == null) { throw new ArgumentNullException(nameof(fieldNameTranslator)); } ValueFormatter = valueFormatter; FieldQueryTranslators = fieldQueryTranslators; FieldNameTranslator = fieldNameTranslator; ExecutionContexts = executionContexts; FieldMap = fieldMap; }
internal FacetPivotExpressionParserBridge(Type elementType, Type itemType, FieldNameTranslator fieldNameTranslator) : base(elementType, itemType, fieldNameTranslator) { }
protected GenericQueryable(Index <TQuery> index, QueryMapper <TQuery> queryMapper, IQueryOptimizer queryOptimizer, Expression expression, Type itemType, FieldNameTranslator fieldNameTranslator, Sitecore.ContentSearch.Linq.Parsing.ExpressionParser expressionParser) : base(index, queryMapper, queryOptimizer, expression, itemType, fieldNameTranslator) { this.expressionParser = expressionParser; }
public GenericQueryable(Index <TElement, TQuery> index, QueryMapper <TQuery> queryMapper, IQueryOptimizer queryOptimizer, FieldNameTranslator fieldNameTranslator, Sitecore.ContentSearch.Linq.Parsing.ExpressionParser expressionParser) : base(index, queryMapper, queryOptimizer, fieldNameTranslator) { this.expressionParser = expressionParser; }
public Generator(IGeneratorParametersProvider parameterProvider, ITemplateInputProvider templateProvider, ITemplateSignatureProvider templateSignatureProvider, IFieldMappingProvider fieldMappingProvider, FieldNameTranslator indexFieldNameTranslator) : this(parameterProvider.CreateParameters(), templateProvider, templateSignatureProvider, fieldMappingProvider, indexFieldNameTranslator) { }
public ExpressionParserWithSpatial(Type elementType, Type itemType, FieldNameTranslator fieldNameTranslator) : base(elementType, itemType, fieldNameTranslator) { }
public IDictionary <string, object> TranslateFieldResult(IDictionary <string, object> fields, FieldNameTranslator fieldNameTranslator) { var smallCreated = fieldNameTranslator.GetIndexFieldName("__smallcreateddate", typeof(DateTime)); var dateRangeHour = fieldNameTranslator.GetIndexFieldName("daterange_hour", typeof(string)); var dateRangeWeek = fieldNameTranslator.GetIndexFieldName("daterange_week", typeof(string)); var dateRangeMonth = fieldNameTranslator.GetIndexFieldName("daterange_month", typeof(string)); var dateRangeYear = fieldNameTranslator.GetIndexFieldName("daterange_year", typeof(string)); if (fields.ContainsKey(dateRangeHour) && fields[dateRangeHour].ToString() == DateTime.Now.ToString("yyyyMMddHH")) { fields[FieldName] = "lasthour"; } else if (fields.ContainsKey(smallCreated) && fields[smallCreated].ToString() == DateTime.Now.Date.ToString(ContentSearchConfigurationSettings.IndexDateFormat)) { fields[FieldName] = "last24"; } else if (fields.ContainsKey(smallCreated) && fields[smallCreated].ToString() == DateTime.Now.Date.AddDays(-1).ToString(ContentSearchConfigurationSettings.IndexDateFormat)) { fields[FieldName] = "yesterday"; } else if (fields.ContainsKey(dateRangeWeek) && fields[dateRangeWeek].ToString() == DateTime.Now.ToString("yyyyMM") + CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday)) { fields[FieldName] = "thisweek"; } else if (fields.ContainsKey(dateRangeWeek) && fields[dateRangeWeek].ToString() == DateTime.Now.AddDays(-7).ToString("yyyyMM") + CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(DateTime.Now.AddDays(-7), CalendarWeekRule.FirstDay, DayOfWeek.Monday)) { fields[FieldName] = "lastweek"; } else if (fields.ContainsKey(dateRangeMonth) && fields[dateRangeMonth].ToString() == DateTime.Now.ToString("yyyyMM")) { fields[FieldName] = "thismonth"; } else if (fields.ContainsKey(dateRangeMonth) && fields[dateRangeMonth].ToString() == DateTime.Now.AddMonths(-1).ToString("yyyyMM")) { fields[FieldName] = "lastmonth"; } else if (fields.ContainsKey(dateRangeYear) && fields[dateRangeYear].ToString() == DateTime.Now.ToString("yyyy")) { fields[FieldName] = "thisyear"; } else { fields[FieldName] = "older"; } return(fields); }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, null, executionContexts, fieldMap) { }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, Func <string, IAzureSearchFieldConfiguration> getFieldConfiguration, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, getFieldConfiguration, executionContexts, null, false) { }
public TranslatedFieldQuery TranslateFieldQuery(string fieldName, object fieldValue, ComparisonType comparison, FieldNameTranslator fieldNameTranslator) { var queryValue = fieldValue != null?this.TranslateToFormatter(fieldValue.ToString()) : null; if (queryValue == null) { return(null); } var query = new TranslatedFieldQuery(); var indexFieldName = fieldNameTranslator.GetIndexFieldName(this.FieldName); query.FieldComparisons.Add(new Tuple <string, object, ComparisonType>(indexFieldName, queryValue, comparison)); return(query); }
public ExtendedExpressionParser(Type elementType, Type itemType, FieldNameTranslator fieldNameTranslator) : base(elementType, itemType, fieldNameTranslator) { }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, Func <string, IAzureSearchFieldConfiguration> getFieldConfiguration, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap, bool convertQueryDatesToUtc) { if (valueFormatter == null) { throw new ArgumentNullException("valueFormatter"); } if (fieldQueryTranslators == null) { throw new ArgumentNullException("fieldQueryTranslators"); } if (fieldNameTranslator == null) { throw new ArgumentNullException("fieldNameTranslator"); } this.ValueFormatter = valueFormatter; this.FieldQueryTranslators = fieldQueryTranslators; this.FieldNameTranslator = fieldNameTranslator; this.ExecutionContexts = executionContexts ?? new IExecutionContext[0]; this.FieldMap = fieldMap; this.getFieldConfiguration = getFieldConfiguration; this.getFieldConfiguration = getFieldConfiguration; this.ConvertQueryDatesToUtc = convertQueryDatesToUtc; }
public FieldTranslator(FieldNameTranslator fieldNameTranslator) { _fieldNameTranslator = fieldNameTranslator; }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap<IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, null, executionContexts, fieldMap) { }
public ResposeTranslator(FieldNameTranslator fieldNameTranslator) { _fieldNameTranslator = fieldNameTranslator; }
/// <summary> /// Initializes a new instance of the <see cref="ExtendedGenericQueryable{TElement, TQuery}"/> class. /// </summary> /// <param name="index">The index.</param> /// <param name="queryMapper">The query mapper.</param> /// <param name="queryOptimizer">The query optimizer.</param> /// <param name="fieldNameTranslator">The field name translator.</param> public ExtendedGenericQueryable(Index <TElement, TQuery> index, QueryMapper <TQuery> queryMapper, IQueryOptimizer queryOptimizer, FieldNameTranslator fieldNameTranslator) : base(index, queryMapper, queryOptimizer, fieldNameTranslator) { }
/// <summary> /// Initializes a new instance of the <see cref="ExtendedGenericQueryable{TElement, TQuery}"/> class. /// </summary> /// <param name="index">The index.</param> /// <param name="queryMapper">The query mapper.</param> /// <param name="queryOptimizer">The query optimizer.</param> /// <param name="expression">The expression.</param> /// <param name="itemType">Type of the item.</param> /// <param name="fieldNameTranslator">The field name translator.</param> protected ExtendedGenericQueryable(Index <TQuery> index, QueryMapper <TQuery> queryMapper, IQueryOptimizer queryOptimizer, Expression expression, Type itemType, FieldNameTranslator fieldNameTranslator) : base(index, queryMapper, queryOptimizer, expression, itemType, fieldNameTranslator) { }
public TranslatedFieldQuery TranslateFieldQuery(string fieldName, object fieldValue, ComparisonType comparison, FieldNameTranslator fieldNameTranslator) { if (comparison == ComparisonType.OrderBy) { throw new InvalidOperationException(string.Format("Sorting by virtual field {0} is not supported.", fieldName)); } var translated = new TranslatedFieldQuery(); switch (fieldValue.ToString()) { case "lasthour": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_hour", typeof(string)), DateTime.Now.ToString("yyyyMMddHH"), ComparisonType.Equal)); return(translated); case "last24": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("__smallcreateddate", typeof(DateTime)), DateTime.Today.ToString(ContentSearchConfigurationSettings.IndexDateFormat), ComparisonType.Equal)); return(translated); case "yesterday": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("__smallcreateddate", typeof(DateTime)), DateTime.Today.AddDays(-1).ToString(ContentSearchConfigurationSettings.IndexDateFormat), ComparisonType.Equal)); return(translated); case "thisweek": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_week", typeof(string)), DateTime.Now.ToString("yyyyMM") + CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday), ComparisonType.Equal)); return(translated); case "lastweek": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_week", typeof(string)), DateTime.Now.AddDays(-7).ToString("yyyyMM") + CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(DateTime.Now.AddDays(-7), CalendarWeekRule.FirstDay, DayOfWeek.Monday), ComparisonType.Equal)); return(translated); case "thismonth": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_month", typeof(string)), DateTime.Now.ToString("yyyyMM"), ComparisonType.Equal)); return(translated); case "lastmonth": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_month", typeof(string)), DateTime.Now.AddMonths(-1).ToString("yyyyMM"), ComparisonType.Equal)); return(translated); case "thisyear": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("daterange_year", typeof(string)), DateTime.Now.ToString("yyyy"), ComparisonType.Equal)); return(translated); case "older": translated.FieldComparisons.Add( new Tuple <string, object, ComparisonType>( fieldNameTranslator.GetIndexFieldName("__smallcreateddate", typeof(DateTime)), DateTime.Now.AddDays(DateTime.Now.Day).AddMonths(-1), ComparisonType.LessThan)); return(translated); } translated.FieldComparisons.Add(new Tuple <string, object, ComparisonType>(fieldName, fieldValue, ComparisonType.Equal)); return(translated); }
public ElasticIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext[] executionContexts) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, executionContexts, null) { }
public BugFixExpressionParser(Type elementType, Type itemType, FieldNameTranslator fieldNameTranslator) : base(elementType, itemType, fieldNameTranslator) { }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap<IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, Func<string, IAzureSearchFieldConfiguration> getFieldConfiguration, IExecutionContext[] executionContexts, IFieldMapReaders fieldMap) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, getFieldConfiguration, executionContexts, null, false) { }
public IDictionary <string, object> TranslateFieldResult(IDictionary <string, object> fields, FieldNameTranslator fieldNameTranslator) { var indexFieldName = fieldNameTranslator.GetIndexFieldName(this.FieldName); if (string.IsNullOrEmpty(indexFieldName) || !fields.ContainsKey(indexFieldName)) { return(fields); } var formatterId = fields[indexFieldName]; if (formatterId == null) { return(fields); } var value = this.TranslateToContentType(formatterId.ToString()); if (value == null) { return(fields); } if (fields.ContainsKey(Constants.IndexFields.ContentType)) { fields[Constants.IndexFields.ContentType] = value; } else { fields.Add(Constants.IndexFields.ContentType, value); } return(fields); }
public SynthesisLinqToLuceneIndex(LuceneSearchContext context, params IExecutionContext[] executionContexts) : base(context, executionContexts) { _fieldNameTranslator = new SynthesisFieldNameTranslator(context.Index.FieldNameTranslator); }
public AzureIndexParameters(IIndexValueFormatter valueFormatter, IFieldQueryTranslatorMap <IFieldQueryTranslator> fieldQueryTranslators, FieldNameTranslator fieldNameTranslator, IExecutionContext executionContext) : this(valueFormatter, fieldQueryTranslators, fieldNameTranslator, new IExecutionContext[1] { executionContext }, (IFieldMapReaders)null) { }