protected override void ExportValue(object value, JsonWriter writer) { Debug.Assert(value != null); Debug.Assert(writer != null); ExportTable((DataTable) value, writer); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { string text; if (value is DateTime) { DateTime dateTime = (DateTime)value; if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal) dateTime = dateTime.ToUniversalTime(); text = dateTime.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture); } #if !NET20 else if (value is DateTimeOffset) { DateTimeOffset dateTimeOffset = (DateTimeOffset)value; if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal) dateTimeOffset = dateTimeOffset.ToUniversalTime(); text = dateTimeOffset.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture); } #endif else { throw new JsonSerializationException("Unexpected value when converting date. Expected DateTime or DateTimeOffset, got {0}.".FormatWith(CultureInfo.InvariantCulture, ReflectionUtils.GetObjectType(value))); } writer.WriteValue(text); }
public void Serialize(JsonWriter jsonWriter, object value) { if (jsonWriter == null) throw new ArgumentNullException("jsonWriter"); SerializeValue(jsonWriter, value, GetContractSafe(value), null, null, null); }
internal static void ExportTable(DataTable table, JsonWriter writer) { Debug.Assert(table != null); Debug.Assert(writer != null); DataViewExporter.ExportView(table.DefaultView, writer); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { long ticks; if (value is DateTime) { DateTime dateTime = (DateTime)value; DateTime utcDateTime = dateTime.ToUniversalTime(); ticks = JsonConvert.ConvertDateTimeToJavaScriptTicks(utcDateTime); } #if !PocketPC && !NET20 else if (value is DateTimeOffset) { DateTimeOffset dateTimeOffset = (DateTimeOffset)value; DateTimeOffset utcDateTimeOffset = dateTimeOffset.ToUniversalTime(); ticks = JsonConvert.ConvertDateTimeToJavaScriptTicks(utcDateTimeOffset.UtcDateTime); } #endif else { throw new JsonSerializationException("Expected date object value."); } writer.WriteStartConstructor("Date"); writer.WriteValue(ticks); writer.WriteEndConstructor(); }
private void SerializePrimitive(JsonWriter writer, object value, JsonPrimitiveContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) { if (contract.UnderlyingType == typeof (byte[])) { bool includeTypeDetails = ShouldWriteType(TypeNameHandling.Objects, contract, member, containerContract, containerProperty); if (includeTypeDetails) { writer.WriteStartObject(); WriteTypeProperty(writer, contract.CreatedType); writer.WritePropertyName(JsonTypeReflector.ValuePropertyName); if (contract.IsNullable) writer.WriteValue(value, true); else writer.WriteValue(value); writer.WriteEndObject(); return; } } if (contract.IsNullable) writer.WriteValue(value, true); else writer.WriteValue(value); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { EnsureReflectionObject(value.GetType()); DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; string keyName = (string)_reflectionObject.GetValue(value, KeyPropertyName); object keyValue = _reflectionObject.GetValue(value, ValuePropertyName); Type keyValueType = (keyValue != null) ? keyValue.GetType() : null; writer.WriteStartObject(); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(KeyPropertyName) : KeyPropertyName); writer.WriteValue(keyName); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(TypePropertyName) : TypePropertyName); writer.WriteValue((keyValueType != null) ? keyValueType.FullName : null); writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(ValuePropertyName) : ValuePropertyName); if (keyValueType != null) { string valueJson; if (JsonSerializerInternalWriter.TryConvertToString(keyValue, keyValueType, out valueJson)) writer.WriteValue(valueJson); else writer.WriteValue(keyValue); } else { writer.WriteNull(); } writer.WriteEndObject(); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataTable table = (DataTable)value; DefaultContractResolver resolver = serializer.ContractResolver as DefaultContractResolver; writer.WriteStartArray(); foreach (DataRow row in table.Rows) { writer.WriteStartObject(); foreach (DataColumn column in row.Table.Columns) { object columnValue = row[column]; if (serializer.NullValueHandling == NullValueHandling.Ignore && (columnValue == null || columnValue == DBNull.Value)) { continue; } writer.WritePropertyName((resolver != null) ? resolver.GetResolvedPropertyName(column.ColumnName) : column.ColumnName); serializer.Serialize(writer, columnValue); } writer.WriteEndObject(); } writer.WriteEndArray(); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } Enum e = (Enum)value; string enumName = e.ToString("G"); if (char.IsNumber(enumName[0]) || enumName[0] == '-') { writer.WriteValue(value); } else { BidirectionalDictionary<string, string> map = GetEnumNameMap(e.GetType()); string resolvedEnumName; map.TryGetByFirst(enumName, out resolvedEnumName); resolvedEnumName = resolvedEnumName ?? enumName; if (CamelCaseText) { string[] names = resolvedEnumName.Split(',').Select(item => StringUtils.ToCamelCase(item.Trim())).ToArray(); resolvedEnumName = string.Join(", ", names); } writer.WriteValue(resolvedEnumName); } }
public void WritesEscapedUnicodeCharacters() { var sw = new StringWriter(); var writer = new JsonWriter(sw); writer.WriteValue("this is escaped: \u3034"); Assert.AreEqual("\"this is escaped: \\u3034\"", sw.ToString()); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } Enum e = (Enum)value; string enumName = e.ToString("G"); if (char.IsNumber(enumName[0]) || enumName[0] == '-') { // enum value has no name so write number writer.WriteValue(value); } else { Type enumType = e.GetType(); string finalName = EnumUtils.ToEnumName(enumType, enumName, CamelCaseText); writer.WriteValue(finalName); } }
public void WritesEscapedQuoteString() { var sw = new StringWriter(); var writer = new JsonWriter(sw); writer.WriteValue("this is escaped: \""); Assert.AreEqual("\"this is escaped: \\\"\"", sw.ToString()); }
public void WritesEscapedControlCharacters() { var sw = new StringWriter(); var writer = new JsonWriter(sw); writer.WriteValue("this is escaped: \b\f\n\r\t\x17"); Assert.AreEqual("\"this is escaped: \\b\\f\\n\\r\\t\\x17\"", sw.ToString()); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { //long ticks; /*if (value is DateTime) { DateTime dateTime = (DateTime)value; DateTime utcDateTime = dateTime.ToUniversalTime(); ticks = JsonConvert.ConvertDateTimeToJavaScriptTicks(utcDateTime); } else if (value is DateTimeOffset) { DateTimeOffset dateTimeOffset = (DateTimeOffset)value; DateTimeOffset utcDateTimeOffset = dateTimeOffset.ToUniversalTime(); ticks = JsonConvert.ConvertDateTimeToJavaScriptTicks(utcDateTimeOffset.UtcDateTime); } else { throw new Exception("Expected date object value."); }*/ //writer.WriteStartConstructor("Date"); //writer.WriteValue(ticks); //writer.WriteEndConstructor(); if (value is DateTime) { DateTime dateTime = (DateTime)value; DateTime vLocValue = DateTime.SpecifyKind(dateTime, DateTimeKind.Utc); writer.WriteValue(vLocValue); } else { throw new Exception("Expected date object value."); } }
public void WritesNonEscapedString() { var sw = new StringWriter(); var writer = new JsonWriter(sw); writer.WriteValue("hello, world"); Assert.AreEqual("\"hello, world\"", sw.ToString()); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { IEntityKeyMember entityKeyMember = DynamicWrapper.CreateWrapper<IEntityKeyMember>(value); Type keyType = (entityKeyMember.Value != null) ? entityKeyMember.Value.GetType() : null; writer.WriteStartObject(); writer.WritePropertyName("Key"); writer.WriteValue(entityKeyMember.Key); writer.WritePropertyName("Type"); writer.WriteValue((keyType != null) ? keyType.FullName : null); writer.WritePropertyName("Value"); if (keyType != null) { string valueJson; if (JsonSerializerInternalWriter.TryConvertToString(entityKeyMember.Value, keyType, out valueJson)) writer.WriteValue(valueJson); else writer.WriteValue(entityKeyMember.Value); } else { writer.WriteNull(); } writer.WriteEndObject(); }
public void WriteToService() { System.Text.StringBuilder m_write = new System.Text.StringBuilder(); JsonWriter m_writer = new JsonWriter(m_write); m_writer.WriteObjectStart(); m_writer.WritePropertyName("ButtonID"); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var converter = GetConverter(value.GetType()); var text = converter.ConvertToInvariantString(value); writer.WriteValue(text); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } Enum e = (Enum)value; string enumName = e.ToString("G"); if (char.IsNumber(enumName[0]) || enumName[0] == '-') { writer.WriteValue(value); } else { BidirectionalDictionary<string, string> map = GetEnumNameMap(e.GetType()); string resolvedEnumName; map.TryGetByFirst(enumName, out resolvedEnumName); resolvedEnumName = resolvedEnumName ?? enumName; if (CamelCaseText) resolvedEnumName = StringUtils.ToCamelCase(resolvedEnumName); writer.WriteValue(resolvedEnumName); } }
public void WritesByte() { var sw = new StringWriter(); var writer = new JsonWriter(sw); writer.WriteValue((Byte)123); Assert.AreEqual("123", sw.ToString()); }
public void JsonWriter_EscapeCharacters() { var body = new Dictionary<string, object>(); body.Add("b", "\b"); body.Add("t", "\t"); body.Add("n", "\n"); body.Add("f", "\f"); body.Add("r", "\r"); body.Add("q", "\""); body.Add("rs", "\\"); var sb = new StringBuilder(); using (var sw = new StringWriter(sb)) { var jw = new JsonWriter(sw); jw.WriteValue(body); sw.Flush(); } Assert.AreEqual("{" + @"""b"":""\u0008""," + @"""t"":""\u0009""," + @"""n"":""\u000a""," + @"""f"":""\u000c""," + @"""r"":""\u000d""," + @"""q"":""\""""," + @"""rs"":""\\""" + "}", sb.ToString()); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value is string) { if (Value_RE.Match(value.ToString()).Success) { writer.WriteRawValue(value.ToString()); } else { string prms; switch (this.Name) { case "before": prms = "el,type,action,extraParams,o"; break; case "complete": prms = "success,response,result,el,type,action,extraParams,o"; break; default: prms = "response,result,el,type,action,extraParams,o"; break; } value = TokenUtils.ReplaceRawToken(TokenUtils.ParseTokens(value.ToString(), this.OwnerControl)); writer.WriteRawValue(new JFunction((string)value, prms).ToScript()); } } }
public void ValueFormatting() { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); using (JsonWriter jsonWriter = new JsonWriter(sw)) { jsonWriter.WriteStartArray(); jsonWriter.WriteValue('@'); jsonWriter.WriteValue("\r\n\t\f\b?{\\r\\n\"\'"); jsonWriter.WriteValue(true); jsonWriter.WriteValue(10); jsonWriter.WriteValue(10.99); jsonWriter.WriteValue(0.99); jsonWriter.WriteValue(0.000000000000000001d); jsonWriter.WriteValue(0.000000000000000001m); jsonWriter.WriteValue(null); jsonWriter.WriteValue("This is a string."); jsonWriter.WriteNull(); jsonWriter.WriteUndefined(); jsonWriter.WriteEndArray(); } const string expected = @"[""@"",""\r\n\t\f\b?{\\r\\n\""'"",true,10,10.99,0.99,1E-18,0.000000000000000001,,""This is a string."",null,undefined]"; string result = sb.ToString(); Console.WriteLine("ValueFormatting"); Console.WriteLine(result); Assert.AreEqual(expected, result); }
public override void WriteJson(JsonWriter writer, object value) { DateTime dateTime = (DateTime)value; long javaScriptTicks = JavaScriptConvert.ConvertDateTimeToJavaScriptTicks(dateTime); writer.WriteValue("@" + javaScriptTicks.ToString(null, CultureInfo.InvariantCulture) + "@"); }
/// <summary> /// Write this target to a JsonWriter /// </summary> /// <param name="Writer">Writer to output to</param> void Write(JsonWriter Writer) { Writer.WriteObjectStart(); Writer.WriteValue("Name", Name); Writer.WriteValue("LoadingPolicy", LoadingPolicy.ToString()); Writer.WriteObjectEnd(); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var dataResult = value as DataResult; #region 序列化DataResult对象 writer.WriteStartObject(); // 写total属性 writer.WritePropertyName("total"); serializer.Serialize(writer, dataResult.Total); // 写pagecount属性 writer.WritePropertyName("pagecount"); serializer.Serialize(writer, dataResult.PageCount); // 写pageindex属性 writer.WritePropertyName("pageindex"); serializer.Serialize(writer, dataResult.PageIndex); // 写rows属性 var converter = new DataTableConverter(); writer.WritePropertyName("rows"); converter.WriteJson(writer, dataResult.Data, serializer); writer.WriteEndObject(); #endregion }
protected override void ExportValue(ExportContext context, object value, JsonWriter writer) { Debug.Assert(value != null); Debug.Assert(writer != null); ExportTime((DateTime) value, writer); }
void WriteResponseForPostJson(HttpRequest request, HttpResponse response) { // read request JSON uint requestedCount = ReadCount(request.Body); // write response JSON var json = new JsonWriter<ResponseFormatter>(response.Body, prettyPrint: false); json.WriteObjectStart(); json.WriteArrayStart(); for (int i = 0; i < requestedCount; i++) { json.WriteString("hello!"); } json.WriteArrayEnd(); json.WriteObjectEnd(); // write headers var headers = response.Headers; headers.AppendHttpStatusLine(HttpVersion.V1_1, 200, new Utf8String("OK")); headers.Append("Content-Length : "); headers.Append(response.Body.CommitedBytes); headers.AppendHttpNewLine(); headers.Append("Content-Type : text/plain; charset=UTF-8"); headers.AppendHttpNewLine(); headers.Append("Server : .NET Core Sample Server"); headers.AppendHttpNewLine(); headers.Append("Date : "); headers.Append(DateTime.UtcNow, 'R'); headers.AppendHttpNewLine(); headers.AppendHttpNewLine(); }
protected override void ExportValue(ExportContext context, object value, JsonWriter writer) { Debug.Assert(context != null); Debug.Assert(value != null); Debug.Assert(writer != null); if (_properties.Count == 0) { writer.WriteString(value.ToString()); } else { writer.WriteStartObject(); foreach (PropertyDescriptor property in _properties) { object propertyValue = property.GetValue(value); if (!JsonNull.LogicallyEquals(propertyValue)) { writer.WriteMember(property.Name); context.Export(propertyValue, writer); } } writer.WriteEndObject(); } }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value is string[]) { writer.WriteRawValue("[{0}]".FormatWith(((string[])value).Join(",", "\"{0}\""))); } }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(GenerateDataKeyRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.KeyManagementService"); string target = "TrentService.GenerateDataKey"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2014-11-01"; request.HttpMethod = "POST"; request.ResourcePath = "/"; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if (publicRequest.IsSetEncryptionContext()) { context.Writer.WritePropertyName("EncryptionContext"); context.Writer.WriteObjectStart(); foreach (var publicRequestEncryptionContextKvp in publicRequest.EncryptionContext) { context.Writer.WritePropertyName(publicRequestEncryptionContextKvp.Key); var publicRequestEncryptionContextValue = publicRequestEncryptionContextKvp.Value; context.Writer.Write(publicRequestEncryptionContextValue); } context.Writer.WriteObjectEnd(); } if (publicRequest.IsSetGrantTokens()) { context.Writer.WritePropertyName("GrantTokens"); context.Writer.WriteArrayStart(); foreach (var publicRequestGrantTokensListValue in publicRequest.GrantTokens) { context.Writer.Write(publicRequestGrantTokensListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetKeyId()) { context.Writer.WritePropertyName("KeyId"); context.Writer.Write(publicRequest.KeyId); } if (publicRequest.IsSetKeySpec()) { context.Writer.WritePropertyName("KeySpec"); context.Writer.Write(publicRequest.KeySpec); } if (publicRequest.IsSetNumberOfBytes()) { context.Writer.WritePropertyName("NumberOfBytes"); context.Writer.Write(publicRequest.NumberOfBytes); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(StartDocumentClassificationJobRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.Comprehend"); string target = "Comprehend_20171127.StartDocumentClassificationJob"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2017-11-27"; request.HttpMethod = "POST"; request.ResourcePath = "/"; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if (publicRequest.IsSetClientRequestToken()) { context.Writer.WritePropertyName("ClientRequestToken"); context.Writer.Write(publicRequest.ClientRequestToken); } else if (!(publicRequest.IsSetClientRequestToken())) { context.Writer.WritePropertyName("ClientRequestToken"); context.Writer.Write(Guid.NewGuid().ToString()); } if (publicRequest.IsSetDataAccessRoleArn()) { context.Writer.WritePropertyName("DataAccessRoleArn"); context.Writer.Write(publicRequest.DataAccessRoleArn); } if (publicRequest.IsSetDocumentClassifierArn()) { context.Writer.WritePropertyName("DocumentClassifierArn"); context.Writer.Write(publicRequest.DocumentClassifierArn); } if (publicRequest.IsSetInputDataConfig()) { context.Writer.WritePropertyName("InputDataConfig"); context.Writer.WriteObjectStart(); var marshaller = InputDataConfigMarshaller.Instance; marshaller.Marshall(publicRequest.InputDataConfig, context); context.Writer.WriteObjectEnd(); } if (publicRequest.IsSetJobName()) { context.Writer.WritePropertyName("JobName"); context.Writer.Write(publicRequest.JobName); } if (publicRequest.IsSetOutputDataConfig()) { context.Writer.WritePropertyName("OutputDataConfig"); context.Writer.WriteObjectStart(); var marshaller = OutputDataConfigMarshaller.Instance; marshaller.Marshall(publicRequest.OutputDataConfig, context); context.Writer.WriteObjectEnd(); } if (publicRequest.IsSetTags()) { context.Writer.WritePropertyName("Tags"); context.Writer.WriteArrayStart(); foreach (var publicRequestTagsListValue in publicRequest.Tags) { context.Writer.WriteObjectStart(); var marshaller = TagMarshaller.Instance; marshaller.Marshall(publicRequestTagsListValue, context); context.Writer.WriteObjectEnd(); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetVolumeKmsKeyId()) { context.Writer.WritePropertyName("VolumeKmsKeyId"); context.Writer.Write(publicRequest.VolumeKmsKeyId); } if (publicRequest.IsSetVpcConfig()) { context.Writer.WritePropertyName("VpcConfig"); context.Writer.WriteObjectStart(); var marshaller = VpcConfigMarshaller.Instance; marshaller.Marshall(publicRequest.VpcConfig, context); context.Writer.WriteObjectEnd(); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { IPAddress ip = (IPAddress)value; writer.WriteValue(ip.ToString()); }
public override void WriteJson(JsonWriter writer, Game value, JsonSerializer serializer) { writer.WriteValue(Enum.GetName(typeof(Game), value)); }
public override void WriteJson(JsonWriter writer, Percent value, JsonSerializer serializer) { writer.WriteValue(value.Value); }
public override void WriteJson(JsonWriter writer, AbsolutePath value, JsonSerializer serializer) { writer.WriteValue((string)value); }
public override void WriteJson(JsonWriter writer, Hash value, JsonSerializer serializer) { writer.WriteValue(value.ToBase64()); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(((pvs_proxy_status)value).StringOf()); }
private void WriteProperty <T>(JsonWriter writer, string key, T value) { writer.WritePropertyName(key); writer.WriteValue(value); }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(CreateStageRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.APIGateway"); request.Headers["Content-Type"] = "application/json"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2015-07-09"; request.HttpMethod = "POST"; if (!publicRequest.IsSetRestApiId()) { throw new AmazonAPIGatewayException("Request object does not have required field RestApiId set"); } request.AddPathResource("{restapi_id}", StringUtils.FromString(publicRequest.RestApiId)); request.ResourcePath = "/restapis/{restapi_id}/stages"; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if (publicRequest.IsSetCacheClusterEnabled()) { context.Writer.WritePropertyName("cacheClusterEnabled"); context.Writer.Write(publicRequest.CacheClusterEnabled); } if (publicRequest.IsSetCacheClusterSize()) { context.Writer.WritePropertyName("cacheClusterSize"); context.Writer.Write(publicRequest.CacheClusterSize); } if (publicRequest.IsSetCanarySettings()) { context.Writer.WritePropertyName("canarySettings"); context.Writer.WriteObjectStart(); var marshaller = CanarySettingsMarshaller.Instance; marshaller.Marshall(publicRequest.CanarySettings, context); context.Writer.WriteObjectEnd(); } if (publicRequest.IsSetDeploymentId()) { context.Writer.WritePropertyName("deploymentId"); context.Writer.Write(publicRequest.DeploymentId); } if (publicRequest.IsSetDescription()) { context.Writer.WritePropertyName("description"); context.Writer.Write(publicRequest.Description); } if (publicRequest.IsSetDocumentationVersion()) { context.Writer.WritePropertyName("documentationVersion"); context.Writer.Write(publicRequest.DocumentationVersion); } if (publicRequest.IsSetStageName()) { context.Writer.WritePropertyName("stageName"); context.Writer.Write(publicRequest.StageName); } if (publicRequest.IsSetTags()) { context.Writer.WritePropertyName("tags"); context.Writer.WriteObjectStart(); foreach (var publicRequestTagsKvp in publicRequest.Tags) { context.Writer.WritePropertyName(publicRequestTagsKvp.Key); var publicRequestTagsValue = publicRequestTagsKvp.Value; context.Writer.Write(publicRequestTagsValue); } context.Writer.WriteObjectEnd(); } if (publicRequest.IsSetTracingEnabled()) { context.Writer.WritePropertyName("tracingEnabled"); context.Writer.Write(publicRequest.TracingEnabled); } if (publicRequest.IsSetVariables()) { context.Writer.WritePropertyName("variables"); context.Writer.WriteObjectStart(); foreach (var publicRequestVariablesKvp in publicRequest.Variables) { context.Writer.WritePropertyName(publicRequestVariablesKvp.Key); var publicRequestVariablesValue = publicRequestVariablesKvp.Value; context.Writer.Write(publicRequestVariablesValue); } context.Writer.WriteObjectEnd(); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) { SortUnion value = (SortUnion)untypedValue; if (value.IsNull) { serializer.Serialize(writer, null); return; } if (value.Enum != null) { switch (value.Enum) { case Sort.SortColor: serializer.Serialize(writer, "-color"); return; case Sort.SortFill: serializer.Serialize(writer, "-fill"); return; case Sort.SortFillOpacity: serializer.Serialize(writer, "-fillOpacity"); return; case Sort.SortOpacity: serializer.Serialize(writer, "-opacity"); return; case Sort.SortShape: serializer.Serialize(writer, "-shape"); return; case Sort.SortSize: serializer.Serialize(writer, "-size"); return; case Sort.SortStroke: serializer.Serialize(writer, "-stroke"); return; case Sort.SortStrokeOpacity: serializer.Serialize(writer, "-strokeOpacity"); return; case Sort.SortStrokeWidth: serializer.Serialize(writer, "-strokeWidth"); return; case Sort.SortText: serializer.Serialize(writer, "-text"); return; case Sort.SortX: serializer.Serialize(writer, "-x"); return; case Sort.SortY: serializer.Serialize(writer, "-y"); return; case Sort.Ascending: serializer.Serialize(writer, "ascending"); return; case Sort.Color: serializer.Serialize(writer, "color"); return; case Sort.Descending: serializer.Serialize(writer, "descending"); return; case Sort.Fill: serializer.Serialize(writer, "fill"); return; case Sort.FillOpacity: serializer.Serialize(writer, "fillOpacity"); return; case Sort.Opacity: serializer.Serialize(writer, "opacity"); return; case Sort.Shape: serializer.Serialize(writer, "shape"); return; case Sort.Size: serializer.Serialize(writer, "size"); return; case Sort.Stroke: serializer.Serialize(writer, "stroke"); return; case Sort.StrokeOpacity: serializer.Serialize(writer, "strokeOpacity"); return; case Sort.StrokeWidth: serializer.Serialize(writer, "strokeWidth"); return; case Sort.Text: serializer.Serialize(writer, "text"); return; case Sort.X: serializer.Serialize(writer, "x"); return; case Sort.Y: serializer.Serialize(writer, "y"); return; } } if (value.AnythingArray != null) { serializer.Serialize(writer, value.AnythingArray); return; } if (value.EncodingSortField != null) { serializer.Serialize(writer, value.EncodingSortField); return; } throw new Exception("Cannot marshal type SortUnion"); }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(CopyProductRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.ServiceCatalog"); string target = "AWS242ServiceCatalogService.CopyProduct"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2015-12-10"; request.HttpMethod = "POST"; string uriResourcePath = "/"; request.ResourcePath = uriResourcePath; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if (publicRequest.IsSetAcceptLanguage()) { context.Writer.WritePropertyName("AcceptLanguage"); context.Writer.Write(publicRequest.AcceptLanguage); } if (publicRequest.IsSetCopyOptions()) { context.Writer.WritePropertyName("CopyOptions"); context.Writer.WriteArrayStart(); foreach (var publicRequestCopyOptionsListValue in publicRequest.CopyOptions) { context.Writer.Write(publicRequestCopyOptionsListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetIdempotencyToken()) { context.Writer.WritePropertyName("IdempotencyToken"); context.Writer.Write(publicRequest.IdempotencyToken); } else if (!(publicRequest.IsSetIdempotencyToken())) { context.Writer.WritePropertyName("IdempotencyToken"); context.Writer.Write(Guid.NewGuid().ToString()); } if (publicRequest.IsSetSourceProductArn()) { context.Writer.WritePropertyName("SourceProductArn"); context.Writer.Write(publicRequest.SourceProductArn); } if (publicRequest.IsSetSourceProvisioningArtifactIdentifiers()) { context.Writer.WritePropertyName("SourceProvisioningArtifactIdentifiers"); context.Writer.WriteArrayStart(); foreach (var publicRequestSourceProvisioningArtifactIdentifiersListValue in publicRequest.SourceProvisioningArtifactIdentifiers) { context.Writer.WriteObjectStart(); foreach (var publicRequestSourceProvisioningArtifactIdentifiersListValueKvp in publicRequestSourceProvisioningArtifactIdentifiersListValue) { context.Writer.WritePropertyName(publicRequestSourceProvisioningArtifactIdentifiersListValueKvp.Key); var publicRequestSourceProvisioningArtifactIdentifiersListValueValue = publicRequestSourceProvisioningArtifactIdentifiersListValueKvp.Value; context.Writer.Write(publicRequestSourceProvisioningArtifactIdentifiersListValueValue); } context.Writer.WriteObjectEnd(); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetTargetProductId()) { context.Writer.WritePropertyName("TargetProductId"); context.Writer.Write(publicRequest.TargetProductId); } if (publicRequest.IsSetTargetProductName()) { context.Writer.WritePropertyName("TargetProductName"); context.Writer.Write(publicRequest.TargetProductName); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
public void Serialize(ref JsonWriter writer, ValueTask <T> value, IJsonFormatterResolver formatterResolver) { // value.Result -> wait...! formatterResolver.GetFormatterWithVerify <T>().Serialize(ref writer, value.Result, formatterResolver); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { int time = (StardewTime)value; JToken.FromObject(time, serializer).WriteTo(writer); //write the value to JSON as an integer }
// MEMO:can be improvement write directly public void Serialize(ref JsonWriter writer, char value, IJsonFormatterResolver formatterResolver) { writer.WriteString(value.ToString(CultureInfo.InvariantCulture)); }
public void SerializeToPropertyName(ref JsonWriter writer, string value, IJsonFormatterResolver formatterResolver) { writer.WriteString(value); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { serializer.Serialize(writer, value); }
public void Serialize(ref JsonWriter writer, BigInteger value, IJsonFormatterResolver formatterResolver) { // JSON.NET writes Integer format, not compatible. writer.WriteString(value.ToString(CultureInfo.InvariantCulture)); }
public override void WriteJson(JsonWriter writer, ObservableValue<T> value, JsonSerializer serializer) { if (value == null) serializer.Serialize(writer, null); serializer.Serialize(writer, value.value); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { throw new NotImplementedException(); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteNull(); }
/// <inheritdoc /> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var validateType = value as ValidateType; serializer.Serialize(writer, validateType != null ? validateType.Value : null); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { serializer.Serialize(writer, ((QueueType)value).ToCustomString()); }
public void Serialize(ref JsonWriter writer, TDictionary value, IJsonFormatterResolver formatterResolver) { if (value == null) { writer.WriteNull(); return; } else { var keyFormatter = formatterResolver.GetFormatterWithVerify <TKey>() as IObjectPropertyNameFormatter <TKey>; var valueFormatter = formatterResolver.GetFormatterWithVerify <TValue>(); writer.WriteBeginObject(); var e = GetSourceEnumerator(value); try { if (keyFormatter != null) { if (e.MoveNext()) { var item = e.Current; keyFormatter.SerializeToPropertyName(ref writer, item.Key, formatterResolver); writer.WriteNameSeparator(); valueFormatter.Serialize(ref writer, item.Value, formatterResolver); } else { goto END; } while (e.MoveNext()) { writer.WriteValueSeparator(); var item = e.Current; keyFormatter.SerializeToPropertyName(ref writer, item.Key, formatterResolver); writer.WriteNameSeparator(); valueFormatter.Serialize(ref writer, item.Value, formatterResolver); } } else { if (e.MoveNext()) { var item = e.Current; writer.WriteString(item.Key.ToString()); writer.WriteNameSeparator(); valueFormatter.Serialize(ref writer, item.Value, formatterResolver); } else { goto END; } while (e.MoveNext()) { writer.WriteValueSeparator(); var item = e.Current; writer.WriteString(item.Key.ToString()); writer.WriteNameSeparator(); valueFormatter.Serialize(ref writer, item.Value, formatterResolver); } } } finally { e.Dispose(); } END: writer.WriteEndObject(); } }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(((DateTime)value).ToString("yyyy-MM-ddTHH:mm:ss")); }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(GetComplianceSummaryRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.ResourceGroupsTaggingAPI"); string target = "ResourceGroupsTaggingAPI_20170126.GetComplianceSummary"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2017-01-26"; request.HttpMethod = "POST"; request.ResourcePath = "/"; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if (publicRequest.IsSetGroupBy()) { context.Writer.WritePropertyName("GroupBy"); context.Writer.WriteArrayStart(); foreach (var publicRequestGroupByListValue in publicRequest.GroupBy) { context.Writer.Write(publicRequestGroupByListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetMaxResults()) { context.Writer.WritePropertyName("MaxResults"); context.Writer.Write(publicRequest.MaxResults); } if (publicRequest.IsSetPaginationToken()) { context.Writer.WritePropertyName("PaginationToken"); context.Writer.Write(publicRequest.PaginationToken); } if (publicRequest.IsSetRegionFilters()) { context.Writer.WritePropertyName("RegionFilters"); context.Writer.WriteArrayStart(); foreach (var publicRequestRegionFiltersListValue in publicRequest.RegionFilters) { context.Writer.Write(publicRequestRegionFiltersListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetResourceTypeFilters()) { context.Writer.WritePropertyName("ResourceTypeFilters"); context.Writer.WriteArrayStart(); foreach (var publicRequestResourceTypeFiltersListValue in publicRequest.ResourceTypeFilters) { context.Writer.Write(publicRequestResourceTypeFiltersListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetTagKeyFilters()) { context.Writer.WritePropertyName("TagKeyFilters"); context.Writer.WriteArrayStart(); foreach (var publicRequestTagKeyFiltersListValue in publicRequest.TagKeyFilters) { context.Writer.Write(publicRequestTagKeyFiltersListValue); } context.Writer.WriteArrayEnd(); } if (publicRequest.IsSetTargetIdFilters()) { context.Writer.WritePropertyName("TargetIdFilters"); context.Writer.WriteArrayStart(); foreach (var publicRequestTargetIdFiltersListValue in publicRequest.TargetIdFilters) { context.Writer.Write(publicRequestTargetIdFiltersListValue); } context.Writer.WriteArrayEnd(); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
/// <summary> /// Marshaller the request object to the HTTP request. /// </summary> /// <param name="publicRequest"></param> /// <returns></returns> public IRequest Marshall(CreateEndpointConfigRequest publicRequest) { IRequest request = new DefaultRequest(publicRequest, "Amazon.SageMaker"); string target = "SageMaker.CreateEndpointConfig"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2017-07-24"; request.HttpMethod = "POST"; request.ResourcePath = "/"; request.MarshallerVersion = 2; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); var context = new JsonMarshallerContext(request, writer); if(publicRequest.IsSetDataCaptureConfig()) { context.Writer.WritePropertyName("DataCaptureConfig"); context.Writer.WriteObjectStart(); var marshaller = DataCaptureConfigMarshaller.Instance; marshaller.Marshall(publicRequest.DataCaptureConfig, context); context.Writer.WriteObjectEnd(); } if(publicRequest.IsSetEndpointConfigName()) { context.Writer.WritePropertyName("EndpointConfigName"); context.Writer.Write(publicRequest.EndpointConfigName); } if(publicRequest.IsSetKmsKeyId()) { context.Writer.WritePropertyName("KmsKeyId"); context.Writer.Write(publicRequest.KmsKeyId); } if(publicRequest.IsSetProductionVariants()) { context.Writer.WritePropertyName("ProductionVariants"); context.Writer.WriteArrayStart(); foreach(var publicRequestProductionVariantsListValue in publicRequest.ProductionVariants) { context.Writer.WriteObjectStart(); var marshaller = ProductionVariantMarshaller.Instance; marshaller.Marshall(publicRequestProductionVariantsListValue, context); context.Writer.WriteObjectEnd(); } context.Writer.WriteArrayEnd(); } if(publicRequest.IsSetTags()) { context.Writer.WritePropertyName("Tags"); context.Writer.WriteArrayStart(); foreach(var publicRequestTagsListValue in publicRequest.Tags) { context.Writer.WriteObjectStart(); var marshaller = TagMarshaller.Instance; marshaller.Marshall(publicRequestTagsListValue, context); context.Writer.WriteObjectEnd(); } context.Writer.WriteArrayEnd(); } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return request; }
public override void WriteJson(JsonWriter writer, INode value, JsonSerializer serializer) { MemberInfo[] members = value.GetType().GetMembers(BindingFlags.Public | BindingFlags.Instance); var jObject = new JObject(); foreach (MemberInfo member in members) { Type memberType; string memberName = member.Name; object memberValue = null; if (member is FieldInfo fieldInfo) { memberType = fieldInfo.FieldType; memberValue = fieldInfo.GetValue(value); } else if (member is PropertyInfo propertyInfo) { memberType = propertyInfo.PropertyType; memberValue = propertyInfo.GetValue(value); } else { continue; } JToken resultToken; if (memberName == nameof(INode.Range) && memberType == typeof(int[])) { if (!IncludeTextSpans) { continue; } var range = (int[])memberValue; var textSpan = TextSpan.FromBounds(range[0], range[1]); resultToken = IsLineColumn ? SourceFile.GetLineColumnTextSpan(textSpan).ToString() : textSpan.ToString(); } else if (memberName == nameof(INode.Location) && memberType == typeof(Location)) { continue; } else { object propValue = memberValue; resultToken = propValue != null?JToken.FromObject(propValue, serializer) : null; } if (resultToken != null) { jObject.Add(member.Name, resultToken); } } jObject.WriteTo(writer); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue((string)value); }
public override void WriteJson( JsonWriter writer, object value, JsonSerializer serializer ) { var rectangle = (Rectangle)value; var obj = JObject.FromObject( new { rectangle.X, rectangle.Y, rectangle.Width, rectangle.Height } ); obj.WriteTo( writer ); }