public override string ReadText()
{
object data = jsonReader.Value;
string text;
switch (currentToken)
{
case JsonToken.Null:
text = null;
break;
case JsonToken.String:
case JsonToken.PropertyName:
text = data as string;
break;
case JsonToken.Boolean:
case JsonToken.Int:
case JsonToken.UInt:
case JsonToken.Long:
case JsonToken.ULong:
IFormattable iformattable = data as IFormattable;
if (iformattable != null)
text = iformattable.ToString(null, CultureInfo.InvariantCulture);
else
text = data.ToString();
break;
case JsonToken.Double:
var formattable = data as IFormattable;
if (formattable != null)
text = formattable.ToString("R", CultureInfo.InvariantCulture);
else
text = data.ToString();
break;
default:
throw new AmazonClientException(
"We expected a VALUE token but got: " + currentToken);
}
return text;
}