Пример #1
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("script");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("script");
            elasticsearchCrudJsonWriter.JsonWriter.WriteRawValue("\"" + _script + "\"");
            if (_paramsSet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("params");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

                foreach (var item in _params)
                {
                    elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(item.ParameterName);
                    elasticsearchCrudJsonWriter.JsonWriter.WriteValue(item.ParameterValue);
                }
                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }

            JsonHelper.WriteValue("lang", "groovy", elasticsearchCrudJsonWriter);

            JsonHelper.WriteValue("_cache", _cache, elasticsearchCrudJsonWriter, _cacheSet);

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #2
0
        public void SerializeAnalyzerWithAsciifoldingFilter()
        {
            const string targetJson =
                "\"analysis\":{\"filter\":{\"my_ascii_folding\":{\"type\":\"asciifolding\",\"preserve_original\":true}},\"analyzer\":{\"default\":{\"type\":\"custom\",\"tokenizer\":\"standard\",\"filter\":[\"standard\",\"my_ascii_folding\"]}}}";

            var analysis = new Analysis
            {
                Analyzer =
                {
                    Analyzers = new List<AnalyzerBase>
                    {
                        new CustomAnalyzer("default")
                        {
                            Tokenizer = DefaultTokenizers.Standard,
                            Filter = new List<string> {"standard", "my_ascii_folding"}
                        }
                    }
                },
                Filters =
                {
                    CustomFilters = new List<AnalysisFilterBase> {new AsciifoldingTokenFilter("my_ascii_folding") {PreserveOriginal = true}}
                }
            };

            var jsonWriter = new ElasticsearchCrudJsonWriter();
            analysis.WriteJson(jsonWriter);
            var result = jsonWriter.GetJsonString();
            Console.WriteLine(result);
            Assert.AreEqual(targetJson, result);
        }
Пример #3
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			JsonHelper.WriteValue("_index", _index, elasticsearchCrudJsonWriter, _indexSet);
			JsonHelper.WriteValue("_type", _type, elasticsearchCrudJsonWriter, _typeSet);
			JsonHelper.WriteValue("_id", _id, elasticsearchCrudJsonWriter, _idSet);
			JsonHelper.WriteValue("_routing", _routing, elasticsearchCrudJsonWriter, _routingSet);
		}
Пример #4
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("sort");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("_script");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("script");
            elasticsearchCrudJsonWriter.JsonWriter.WriteRawValue("\"" + _script + "\"");
            JsonHelper.WriteValue("order", Order.ToString(), elasticsearchCrudJsonWriter);
            JsonHelper.WriteValue("type", _scriptType, elasticsearchCrudJsonWriter, _scriptTypeSet);
            if (_paramsSet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("params");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

                foreach (var item in _params)
                {
                    elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(item.ParameterName);
                    elasticsearchCrudJsonWriter.JsonWriter.WriteValue(item.ParameterValue);
                }
                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #5
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("order");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue(_field, _order.ToString(), elasticsearchCrudJsonWriter);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #6
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("exists");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue("field", _field, elasticsearchCrudJsonWriter);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #7
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("indices");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            JsonHelper.WriteListValue("indices", _indices, elasticsearchCrudJsonWriter);

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("filter");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
            _filter.WriteJson(elasticsearchCrudJsonWriter);
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

            if (_noMatchFilterSet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("no_match_filter");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
                _noMatchFilter.WriteJson(elasticsearchCrudJsonWriter);
                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }
            else if (!_noMatchFilterSet && _noMatchFilterNoneSet)
            {
                JsonHelper.WriteValue("no_match_filter", "none", elasticsearchCrudJsonWriter);
            }

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #8
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("constant_score");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            if (_querySet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("query");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
                _query.WriteJson(elasticsearchCrudJsonWriter);
                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }

            if (_filterSet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("filter");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
                _filter.WriteJson(elasticsearchCrudJsonWriter);
                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }

            JsonHelper.WriteValue("boost", _boost, elasticsearchCrudJsonWriter, _boostSet);

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #9
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("type");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue("value", _type, elasticsearchCrudJsonWriter);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #10
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("span_not");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("include");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
            _include.WriteJson(elasticsearchCrudJsonWriter);
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("exclude");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
            _exclude.WriteJson(elasticsearchCrudJsonWriter);
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

            if (_distSet)
            {
                JsonHelper.WriteValue("dist", _dist, elasticsearchCrudJsonWriter, _distSet);
            }
            else
            {
                JsonHelper.WriteValue("pre", _pre, elasticsearchCrudJsonWriter, _preSet);
                JsonHelper.WriteValue("post", _post, elasticsearchCrudJsonWriter, _postSet);
            }

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #11
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(_name);
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            JsonHelper.WriteListValue("types", _indexTypes, elasticsearchCrudJsonWriter, _indexTypesSet);

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("source");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            if (_querySet)
            {
                _query.WriteJson(elasticsearchCrudJsonWriter);
            }

            if (_aggsSet)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("aggs");
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
                foreach (var item in _aggs)
                {
                    item.WriteJson(elasticsearchCrudJsonWriter);
                }

                elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            }

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #12
0
		public static void WriteValue(string key, object valueObj, ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter, bool writeValue = true)
		{
			if (writeValue)
			{
				elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(key);
				elasticsearchCrudJsonWriter.JsonWriter.WriteValue(valueObj);
			}
		}
Пример #13
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("prefix");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue(_field, _prefix, elasticsearchCrudJsonWriter);
			JsonHelper.WriteValue("_cache", _cache, elasticsearchCrudJsonWriter, _cacheSet);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();	
		}
 public override void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(InformationRetrievalEnum.chi_square.ToString());
     elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
     JsonHelper.WriteValue("include_negatives", _includeNegatives, elasticsearchCrudJsonWriter, _includeNegativesSet);
     JsonHelper.WriteValue("background_is_superset", _backgroundIsSuperset, elasticsearchCrudJsonWriter, _backgroundIsSupersetSet);
     elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
 }
Пример #15
0
		public override void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			Similarities.WriteJson(elasticsearchCrudJsonWriter);
			Analysis.WriteJson(elasticsearchCrudJsonWriter);
			JsonHelper.WriteValue("number_of_shards", _numberOfShards, elasticsearchCrudJsonWriter, _numberOfShardsSet);
			base.WriteJson(elasticsearchCrudJsonWriter);
			
		}
Пример #16
0
        private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            WriteCommonValues(elasticsearchCrudJsonWriter);

            JsonHelper.WriteValue("lowercase", _lowercase, elasticsearchCrudJsonWriter, _lowercaseSet);
            JsonHelper.WriteValue("pattern", _pattern, elasticsearchCrudJsonWriter, _patternSet);
            JsonHelper.WriteValue("flags", _flags, elasticsearchCrudJsonWriter, _flagsSet);
        }
Пример #17
0
 private void WriteSpecificJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     if (AnalyzerSet)
     {
         WriteCommonValues(elasticsearchCrudJsonWriter);
         JsonHelper.WriteValue("language", _language.ToString(), elasticsearchCrudJsonWriter, _languageSet);
     }
 }
Пример #18
0
 private void WriteSpecificJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     if (AnalyzerSet)
     {
         JsonHelper.WriteListValue("filter", _filter, elasticsearchCrudJsonWriter, _filterSet);
         JsonHelper.WriteListValue("char_filter", _charFilter, elasticsearchCrudJsonWriter, _charFilterSet);
     }
 }
Пример #19
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue("type", DefaultGeoShapes.Point, elasticsearchCrudJsonWriter);
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("coordinates");
			Coordinates.WriteJson(elasticsearchCrudJsonWriter);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #20
0
		//{
		// "query" : {
		//	  "match_all" : { }
		//  }
		//}
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("match_all");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

			JsonHelper.WriteValue("boost", _boost, elasticsearchCrudJsonWriter, _boostSet);

			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #21
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("filter");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            _filter.WriteJson(elasticsearchCrudJsonWriter);
            JsonHelper.WriteValue("_name", _name,elasticsearchCrudJsonWriter,_nameSet);
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #22
0
 private void WriteNotFilter(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     if (_notSet)
     {
         elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("filter");
         elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
         _not.WriteJson(elasticsearchCrudJsonWriter);
         elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
     }
 }
Пример #23
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("missing");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			JsonHelper.WriteValue("field", _field, elasticsearchCrudJsonWriter);
			JsonHelper.WriteValue("existence", _existence, elasticsearchCrudJsonWriter, _existenceSet);
			JsonHelper.WriteValue("null_value", _nullValue, elasticsearchCrudJsonWriter, _nullValueSet);
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

		}
Пример #24
0
		//"aliases" : { 
		//  "april_2014" : {},
		//  "year_2014" : {}
		//}, 
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("aliases");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			foreach (var alias in Aliases)
			{
				alias.WriteJson(elasticsearchCrudJsonWriter);
			}
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #25
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("term");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

			JsonHelper.WriteValue(_term, _termValue, elasticsearchCrudJsonWriter);
			JsonHelper.WriteValue("_cache", _cache, elasticsearchCrudJsonWriter, _cacheSet);

			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
Пример #26
0
		public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
		{
			elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("warmers");
			elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
			foreach (var warmer in Warmers)
			{
				warmer.WriteJson(elasticsearchCrudJsonWriter);
			}
			elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
		}
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("extended_bounds");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            JsonHelper.WriteValue("min", Min, elasticsearchCrudJsonWriter);
            JsonHelper.WriteValue("max", Max, elasticsearchCrudJsonWriter);

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #28
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("and");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            WriteAndFilterList(elasticsearchCrudJsonWriter);

            JsonHelper.WriteValue("_cache", _cache, elasticsearchCrudJsonWriter, _cacheSet);

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
Пример #29
0
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("routing", _routing, elasticsearchCrudJsonWriter, _routingSet);
     if (_filterSet)
     {
         elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("filter");
         elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();
         _filter.WriteJson(elasticsearchCrudJsonWriter);
         elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
     }
 }
Пример #30
0
        public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("terms");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            JsonHelper.WriteListValue(_term, _termValues, elasticsearchCrudJsonWriter);
            JsonHelper.WriteValue("boost", _boost, elasticsearchCrudJsonWriter, _boostSet);
            JsonHelper.WriteValue("minimum_should_match", _minimumShouldMatch, elasticsearchCrudJsonWriter, _minimumShouldMatchSet);

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
        }
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("sigma", _sigma, elasticsearchCrudJsonWriter, _sigmaSet);
 }
Пример #32
0
 public override void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     WriteJsonBase(elasticsearchCrudJsonWriter, WriteSpecificJson);
 }
Пример #33
0
 public void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("include_in_parent", _includeInParent, elasticsearchCrudJsonWriter, _includeInParentSet);
     JsonHelper.WriteValue("include_in_root", _includeInRoot, elasticsearchCrudJsonWriter, _includeInRootSet);
 }
Пример #34
0
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("type", Type, elasticsearchCrudJsonWriter);
     JsonHelper.WriteValue("language", _language.ToString(), elasticsearchCrudJsonWriter, _languageSet);
 }
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("path", _path, elasticsearchCrudJsonWriter);
 }
Пример #36
0
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     _filter.WriteJson(elasticsearchCrudJsonWriter);
 }
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
 }
Пример #38
0
 private void WriteValues(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     JsonHelper.WriteValue("type", Type, elasticsearchCrudJsonWriter);
     JsonHelper.WriteValue("mu", _mu, elasticsearchCrudJsonWriter, _muSet);
 }
Пример #39
0
        public void IndexSettingsCreatePropertyMappingForTopDocument(EntityContextInfo entityInfo, MappingDefinition mappingDefinition, ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            var elasticSearchMapping = _elasticsearchSerializerConfiguration.ElasticsearchMappingResolver.GetElasticSearchMapping(entityInfo.EntityType);

            elasticSearchMapping.TraceProvider = _traceProvider;
            elasticSearchMapping.SaveChildObjectsAsWellAsParent            = _elasticsearchSerializerConfiguration.SaveChildObjectsAsWellAsParent;
            elasticSearchMapping.ProcessChildDocumentsAsSeparateChildIndex = _elasticsearchSerializerConfiguration.ProcessChildDocumentsAsSeparateChildIndex;

            IndexCreateCreatePropertyMappingForEntityForParentDocument(entityInfo, elasticSearchMapping, mappingDefinition, elasticsearchCrudJsonWriter);

            if (_elasticsearchSerializerConfiguration.ProcessChildDocumentsAsSeparateChildIndex)
            {
                if (elasticSearchMapping.ChildIndexEntities.Count > 0)
                {
                    // Only save the top level items now
                    elasticSearchMapping.SaveChildObjectsAsWellAsParent = false;
                    foreach (var item in elasticSearchMapping.ChildIndexEntities)
                    {
                        IndexCreateCreatePropertyMappingForChildDocument(elasticsearchCrudJsonWriter, entityInfo, elasticSearchMapping, item, mappingDefinition);
                    }
                }
            }

            elasticSearchMapping.ChildIndexEntities.Clear();
        }
Пример #40
0
        /// <summary>
        /// Create a new index for the parent document
        /// </summary>
        /// <param name="entityInfo"></param>
        /// <param name="elasticsearchMapping"></param>
        /// <param name="mappingDefinition">mapping definitions for the index type</param>
        private void IndexCreateCreatePropertyMappingForEntityForParentDocument(EntityContextInfo entityInfo, ElasticsearchMapping elasticsearchMapping, MappingDefinition mappingDefinition, ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
        {
            var itemType = elasticsearchMapping.GetDocumentType(entityInfo.EntityType);

            if (_processedItems.Contains("_mapping" + itemType))
            {
                return;
            }
            _processedItems.Add("_mapping" + itemType);

            //elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();


            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("mappings");
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(itemType);
            elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject();

            mappingDefinition.Source.WriteJson(elasticsearchCrudJsonWriter);
            mappingDefinition.All.WriteJson(elasticsearchCrudJsonWriter);

            if (entityInfo.RoutingDefinition.RoutingId != null && _elasticsearchSerializerConfiguration.UserDefinedRouting)
            {
                CreateForceRoutingMappingForDocument(elasticsearchCrudJsonWriter);
            }

            if (entityInfo.RoutingDefinition.ParentId != null)
            {
                CreateParentMappingForDocument(
                    elasticsearchCrudJsonWriter,
                    elasticsearchMapping.GetDocumentType(entityInfo.ParentEntityType));
            }

            ProccessPropertyMappingsWithoutTypeName(elasticsearchCrudJsonWriter, entityInfo, elasticsearchMapping);
            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

            if (_elasticsearchSerializerConfiguration.ProcessChildDocumentsAsSeparateChildIndex)
            {
                if (elasticsearchMapping.ChildIndexEntities.Count > 0)
                {
                    elasticsearchMapping.SaveChildObjectsAsWellAsParent = false;
                    foreach (var item in elasticsearchMapping.ChildIndexEntities)
                    {
                        IndexCreateCreatePropertyMappingForChildDocument(elasticsearchCrudJsonWriter, entityInfo, elasticsearchMapping, item, mappingDefinition);
                    }
                }
            }

            elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();
            //elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject();

            //CreateMappingCommandForTypeWithExistingIndex(elasticsearchCrudJsonWriter.GetJsonString(), mappingDefinition.Index, itemType);
        }
Пример #41
0
 public abstract void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter);
Пример #42
0
 public override void WriteJson(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter)
 {
     base.WriteJsonBase(elasticsearchCrudJsonWriter, WriteValues);
 }
Пример #43
0
        public static void WriteTokenCharValue(string key, List <TokenChar> valueObj, ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter, bool writeValue = true)
        {
            if (writeValue)
            {
                elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName(key);
                elasticsearchCrudJsonWriter.JsonWriter.WriteStartArray();

                foreach (var obj in valueObj)
                {
                    elasticsearchCrudJsonWriter.JsonWriter.WriteValue(obj.ToString());
                }

                elasticsearchCrudJsonWriter.JsonWriter.WriteEndArray();
            }
        }