public virtual string Format(IJsonFormat format, string json)
        {
            if (format == null)
            {
                throw new ArgumentNullException(nameof(format));
            }

            var root = this.Parser.Parse(json);

            var propertyComparer = this.PropertyComparerFactory.Create(format.PropertyFormat);

            this.SortPropertiesRecursive(propertyComparer, root);

            var jsonSerializer = JsonSerializer.CreateDefault();

            using (var stringWriter = new StringWriter(format.Provider))
            {
                using (var jsonTextWriter = new JsonTextWriter(stringWriter))
                {
                    jsonTextWriter.Formatting  = format.Indent ? Formatting.Indented : Formatting.None;
                    jsonTextWriter.Indentation = format.Indentation;
                    jsonTextWriter.IndentChar  = format.IndentCharacter;

                    jsonSerializer.Serialize(jsonTextWriter, root, root.GetType());
                }

                return(stringWriter.ToString());
            }
        }
Example #2
0
 public TestQueryContext(AreaMap area, IJsonFormat jsonFormat, IQueryDb queryDb, TestQueryNotifier notifier)
 {
     _area       = area;
     _jsonFormat = jsonFormat;
     _queryDb    = queryDb;
     _notifier   = notifier;
 }
Example #3
0
 public static object FromJsonUtf8(this IJsonFormat format, Stream json, Type type) =>
 format.FromJsonUtf8(Binary.From(json), type);
Example #4
0
 public static T FromJsonUtf8 <T>(this IJsonFormat format, Stream json) =>
 format.FromJsonUtf8 <T>(Binary.From(json));
Example #5
0
 public static void FromJsonUtf8(this IJsonFormat format, byte[] json, object target) =>
 format.FromJsonUtf8(Binary.From(json), target);
Example #6
0
 public static object FromJsonUtf8(this IJsonFormat format, byte[] json) =>
 format.FromJsonUtf8(Binary.From(json));
Example #7
0
 public static void FromJsonUtf8(this IJsonFormat format, Binary json, object target) =>
 format.FromJson(json.ToStringUtf8(), target);
Example #8
0
 public static JObject ToJObject(this IJsonFormat format, object value, Type type) =>
 format.Apply(settings => JObject.Parse(JsonConvert.SerializeObject(value, type, settings)));
Example #9
0
 public static JObject ToJObjectUtf8(this IJsonFormat format, byte[] json) =>
 format.ToJObjectUtf8(Binary.From(json));
Example #10
0
 public static JObject ToJObjectUtf8(this IJsonFormat format, Binary json) =>
 format.ToJObject(json.ToStringUtf8());
Example #11
0
 public static Binary ToJsonUtf8(this IJsonFormat format, object value, Type type) =>
 Binary.FromUtf8(format.ToJson(value, type));
Example #12
0
 public static void FromJson(this IJsonFormat format, string json, object target) =>
 format.Apply(settings => JsonConvert.PopulateObject(json, target, settings));
Example #13
0
 public static object FromJson(this IJsonFormat format, string json, Type type) =>
 format.Apply(settings => JsonConvert.DeserializeObject(json, type, settings));
Example #14
0
        //
        // From
        //

        public static T FromJson <T>(this IJsonFormat format, string json) =>
        format.Apply(settings => JsonConvert.DeserializeObject <T>(json, settings));
Example #15
0
 public static JObject ToJObject(this IJsonFormat format, string json) =>
 JObject.Parse(json);
Example #16
0
        //
        // From (binary)
        //

        public static T FromJsonUtf8 <T>(this IJsonFormat format, Binary json) =>
        format.FromJson <T>(json.ToStringUtf8());
Example #17
0
 public TopicAppTimelineDb(AreaMap area, IJsonFormat json, TopicType topicType)
 {
     _area      = area;
     _json      = json;
     _topicType = topicType;
 }
Example #18
0
 public static object FromJsonUtf8(this IJsonFormat format, Binary json, Type type) =>
 format.FromJson(json.ToStringUtf8(), type);
Example #19
0
 public EventStoreContext(IEventStoreConnection connection, IJsonFormat json, AreaMap area)
 {
     Connection = connection;
     Json       = json;
     Area       = area;
 }
Example #20
0
 public static string ToJson(this IJsonFormat format, object value, Type type) =>
 format.Apply(settings => JsonConvert.SerializeObject(value, type, settings));