void ISelfTwoWaySerializable.Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings) { writer.WriteStartObject(); if (Language is not null) { writer.WritePropertyName("lang"); JsonSerializer.Serialize(writer, Language, options); } if (Options is not null) { writer.WritePropertyName("options"); JsonSerializer.Serialize(writer, Options, options); } writer.WritePropertyName("source"); writer.WriteStringValue(Source); if (Params is not null) { writer.WritePropertyName("params"); SourceSerialisation.SerializeParams(Params, writer, settings); } writer.WriteEndObject(); }
protected override void SerializeProperties(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings) { if (DocAsUpsert.HasValue) { writer.WritePropertyName("doc_as_upsert"); writer.WriteBooleanValue(DocAsUpsert.Value); } if (PartialUpdate is not null) { writer.WritePropertyName("doc"); SourceSerialisation.Serialize(PartialUpdate, writer, settings.SourceSerializer); } }
protected override void SerializeProperties(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings) { if (PartialUpdate is not null) { writer.WritePropertyName("doc"); SourceSerialisation.Serialize(PartialUpdate, writer, settings.SourceSerializer); } if (Script is not null) { writer.WritePropertyName("script"); JsonSerializer.Serialize(writer, Script, options); } if (ScriptedUpsert.HasValue) { writer.WritePropertyName("scripted_upsert"); JsonSerializer.Serialize(writer, ScriptedUpsert.Value, options); } if (DocAsUpsert.HasValue) { writer.WritePropertyName("doc_as_upsert"); JsonSerializer.Serialize(writer, DocAsUpsert.Value, options); } if (Upsert is not null) { writer.WritePropertyName("upsert"); SourceSerialisation.Serialize(Upsert, writer, settings.SourceSerializer); } if (Source is not null) { writer.WritePropertyName("_source"); JsonSerializer.Serialize(writer, Source, options); } }
private void WriteBody(IElasticsearchClientSettings settings, Utf8JsonWriter writer, JsonSerializerOptions options) { if (_scriptAction is not null) { writer.WritePropertyName("script"); JsonSerializer.Serialize(writer, new InlineScriptDescriptor(_scriptAction), options); } if (_document is not null) { writer.WritePropertyName("doc"); SourceSerialisation.Serialize(_document, writer, settings.SourceSerializer); } if (_scriptedUpsert.HasValue) { writer.WritePropertyName("scripted_upsert"); JsonSerializer.Serialize(writer, _scriptedUpsert.Value, options); } if (_docAsUpsert.HasValue) { writer.WritePropertyName("doc_as_upsert"); JsonSerializer.Serialize(writer, _docAsUpsert.Value, options); } if (_upsert is not null) { writer.WritePropertyName("upsert"); SourceSerialisation.Serialize(_upsert, writer, settings.SourceSerializer); } if (_source is not null) { writer.WritePropertyName("_source"); JsonSerializer.Serialize(writer, Source, options); } }