protected virtual BaseQuery HandleEndsWith(EndsWithNode node, ElasticSearchQueryMapperState state)
        {
            var fieldName = GetFormattedFieldName(node);
            var valueNode = QueryHelper.GetValueNode <string>(node);

            var queryValue = ValueFormatter.FormatValueForIndexStorage(valueNode.Value);

            //TODO: same as the HandleContains method... is there a better way to do this without wildcard queries?
            return(Query.Wildcard(fieldName, "*" + queryValue));
        }
        protected QueryBase VisitEndsWith(EndsWithNode node, ElasticQueryMapperState state)
        {
            // TODO: Move these 3 lines to separate method for reuse?
            var fieldName = GetFormattedFieldName(node);
            var valueNode = node.GetValueNode <string>();
            var value     = ValueFormatter.FormatValueForIndexStorage(valueNode.Value, fieldName);

            return(new WildcardQuery
            {
                Field = fieldName,
                Value = "*" + value.ToStringOrEmpty(),
                Boost = node.Boost
            });
        }
 protected virtual QueryNode VisitEndsWith(EndsWithNode node, AzureQueryOptimizerState state)
 {
     return((QueryNode) new EndsWithNode(this.Visit(node.LeftNode, state), this.Visit(node.RightNode, state), state.Boost));
 }