private void CreateBulkContentForParentDocument(EntityContextInfo entityInfo, ElasticsearchMapping elasticsearchMapping) { _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); _elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("index"); // Write the batch "index" operation header _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); WriteValue("_index", elasticsearchMapping.GetIndexForType(entityInfo.EntityType)); WriteValue("_type", elasticsearchMapping.GetDocumentType(entityInfo.EntityType)); WriteValue("_id", entityInfo.Id); if (entityInfo.RoutingDefinition.ParentId != null && _elasticsearchSerializerConfiguration.ProcessChildDocumentsAsSeparateChildIndex) { // It's a document which belongs to a parent WriteValue("_parent", entityInfo.RoutingDefinition.ParentId); } if (entityInfo.RoutingDefinition.RoutingId != null && _elasticsearchSerializerConfiguration.UserDefinedRouting) { // It's a document which has a specific route WriteValue("_routing", entityInfo.RoutingDefinition.RoutingId); } _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteRaw("\n"); //ES requires this \n separator _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); elasticsearchMapping.MapEntityValues(entityInfo, _elasticsearchCrudJsonWriter, true); _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteRaw("\n"); }
private void ProccessPropertyMappingsWithoutTypeName(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter, EntityContextInfo entityInfo, ElasticsearchMapping elasticsearchMapping) { //"properties": { elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("properties"); elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); elasticsearchMapping.MapEntityValues(entityInfo, elasticsearchCrudJsonWriter, true, CreatePropertyMappings); elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); }
private void CreateBulkContentForParentDocument(EntityContextInfo entityInfo, ElasticsearchMapping elasticsearchMapping) { _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); _elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("index"); // Write the batch "index" operation header _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); WriteValue("_index", elasticsearchMapping.GetIndexForType(entityInfo.EntityType)); WriteValue("_type", elasticsearchMapping.GetDocumentType(entityInfo.EntityType)); WriteValue("_id", entityInfo.Id); if (entityInfo.RoutingDefinition.ParentId != null && _elasticsearchSerializerConfiguration.ProcessChildDocumentsAsSeparateChildIndex) { // It's a document which belongs to a parent WriteValue("_parent", entityInfo.RoutingDefinition.ParentId); } if (entityInfo.RoutingDefinition.RoutingId != null && _elasticsearchSerializerConfiguration.UserDefinedRouting) { // It's a document which has a specific route WriteValue("_routing", entityInfo.RoutingDefinition.RoutingId); } _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteRaw("\n"); //ES requires this \n separator _elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); elasticsearchMapping.MapEntityValues(entityInfo, _elasticsearchCrudJsonWriter, true); _elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); _elasticsearchCrudJsonWriter.JsonWriter.WriteRaw("\n"); }
private void ProccessPropertyMappingsWithoutTypeName(ElasticsearchCrudJsonWriter elasticsearchCrudJsonWriter, EntityContextInfo entityInfo, ElasticsearchMapping elasticsearchMapping) { //"properties": { elasticsearchCrudJsonWriter.JsonWriter.WritePropertyName("properties"); elasticsearchCrudJsonWriter.JsonWriter.WriteStartObject(); elasticsearchMapping.MapEntityValues(entityInfo, elasticsearchCrudJsonWriter, true, CreatePropertyMappings); elasticsearchCrudJsonWriter.JsonWriter.WriteEndObject(); }