Пример #1
0
 public static void Serialize(Newtonsoft.Json.JsonWriter Writer, Timing TimingCollectionObj)
 {
     Writer.WritePropertyName("Timing");
     Writer.WriteStartArray();
     foreach (TimingType timing in TimingCollectionObj)
     {
         if (timing.Name == TimingCollectionObj.Name)
         {
             continue;
         }
         Writer.WriteStartObject();
         Writer.WritePropertyName("Name");
         Writer.WriteValue(timing.Name);
         Writer.WritePropertyName("ExecutionTime");
         Writer.WriteValue(timing.ExecutionTime);
         Writer.WriteEndObject();
     }
     Writer.WriteEndArray();
     if (TimingCollectionObj.Child != null)
     {
         var timing2 = TimingCollectionObj.Child.Where(tt => tt.Name == TimingCollectionObj.Child.Name).First();
         Writer.WritePropertyName("TimingGroup");
         Writer.WriteStartObject();
         Writer.WritePropertyName("Name");
         Writer.WriteValue(TimingCollectionObj.Child.Name);
         Writer.WritePropertyName("ExecutionTime");
         Writer.WriteValue(timing2.ExecutionTime);
         Timing.Serialize(Writer, TimingCollectionObj.Child);
         Writer.WriteEndObject();
     }
 }
Пример #2
0
        protected override void WriteValue(Newtonsoft.Json.JsonWriter writer)
        {
            if (this.Value.Kind == DateTimeKind.Utc ||
                this.Value.Kind == DateTimeKind.Unspecified)
            {
                writer.WriteValue(Value.ToString("yyyy-MM-ddTHH:mmZ"));
            }
            else
            {
                var localDate = new DateTime(this.Value.Year, this.Value.Month, this.Value.Day, this.Value.Hour, this.Value.Minute, this.Value.Second, this.Value.Kind);
                var utcDate   = new DateTime(this.Value.Year, this.Value.Month, this.Value.Day, this.Value.Hour, this.Value.Minute, this.Value.Second, this.Value.Kind);
                var diff      = utcDate - localDate.ToUniversalTime();

                string outputText = localDate.ToString("yyyy-MM-ddTHH:mm", CultureInfo.InvariantCulture);
                if (diff < TimeSpan.Zero)
                {
                    outputText = string.Format("{0}-{1:00}:{2:00}", outputText, Math.Abs(diff.Hours), diff.Minutes);
                }
                else
                {
                    outputText = string.Format("{0}+{1:00}:{2:00}", outputText, Math.Abs(diff.Hours), diff.Minutes);
                }

                writer.WriteValue(outputText);
            }
        }
Пример #3
0
        /// <summary>
        /// Writes the JSON representation of the object.
        /// </summary>
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            var attribute = value as DataService.Attribute;

            if (attribute != null)
            {
                writer.WritePropertyName(attribute.Key.ToString(System.Globalization.CultureInfo.InvariantCulture));
                writer.WriteValue(attribute.Value);
            }
            else
            {
                writer.WriteStartObject();

                var attributes = (DataService.Attribute[])value;
                if (attributes != null && attributes.Length > 0)
                {
                    foreach (var att in attributes)
                    {
                        writer.WritePropertyName(att.Key.ToString(System.Globalization.CultureInfo.InvariantCulture));
                        writer.WriteValue(att.Value);
                    }
                }
                writer.WriteEndObject();
            }
        }
Пример #4
0
        protected override void WriteKeys(Newtonsoft.Json.JsonWriter writer)
        {
            if (DateStyle != FieldDateTimeStyle.Unspecified)
            {
                writer.WritePropertyName("dateStyle");
                writer.WriteValue(DateStyle.ToString());
            }

            if (TimeStyle != FieldDateTimeStyle.Unspecified)
            {
                writer.WritePropertyName("timeStyle");
                writer.WriteValue(TimeStyle.ToString());
            }

            if (IsRelative.HasValue)
            {
                writer.WritePropertyName("isRelative");
                writer.WriteValue(IsRelative.Value);
            }

            if (IgnoresTimeZone.HasValue)
            {
                writer.WritePropertyName("ignoresTimeZone");
                writer.WriteValue(IgnoresTimeZone.Value);
            }
        }
Пример #5
0
 /// <summary>
 /// Output the edge tuple and data to the json writer
 /// </summary>
 /// <param name="srctarg">Source/Target node indexes</param>
 /// <param name="writer">Json Writer</param>
 public void Serialise(System.Tuple <uint, uint> srctarg, Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteValue(srctarg.Item1);
     writer.WriteValue(srctarg.Item2);
     writer.WriteValue(edgeClass);
     writer.WriteValue(ExecutionCount);
 }
Пример #6
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WritePropertyName("sprite");
     writer.WriteValue(_spriteAsset);
     writer.WritePropertyName("depth");
     writer.WriteValue(Depth);
 }
Пример #7
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WritePropertyName("width");
     writer.WriteValue(Width);
     writer.WritePropertyName("height");
     writer.WriteValue(Height);
 }
Пример #8
0
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("averageForce");
     writer.WriteValue(this.AverageForce);
     writer.WritePropertyName("forceVariation");
     writer.WriteValue(this.ForceVariation);
     writer.WriteEndObject();
 }
Пример #9
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WritePropertyName("size");
     writer.WriteValue(Size);
     writer.WritePropertyName("equip");
     writer.WriteValue(Equip.Length > 0);
     writer.WritePropertyName("use");
     writer.WriteValue(UseItems.Length > 0);
 }
 private void WriteExtendedJson(Newtonsoft.Json.JsonWriter writer, BsonBinaryData binaryData, Newtonsoft.Json.JsonSerializer serializer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("$binary");
     writer.WriteValue(Convert.ToBase64String(binaryData.Bytes));
     writer.WritePropertyName("$type");
     writer.WriteValue(((int)binaryData.SubType).ToString("x2"));
     writer.WriteEnd();
 }
Пример #11
0
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("south");
     writer.WriteValue(this.SouthPositive ? this.SouthAxis.ToString() : '-' + this.SouthAxis.ToString());
     writer.WritePropertyName("east");
     writer.WriteValue(this.EastPositive ? this.EastAxis.ToString() : '-' + this.EastAxis.ToString());
     writer.WriteEndObject();
 }
Пример #12
0
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("length");
     writer.WriteValue(this.Length);
     writer.WritePropertyName("stiffness");
     writer.WriteValue(this.Stiffness);
     writer.WriteEndObject();
 }
Пример #13
0
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("velocity");
     writer.WriteValue(this.Velocity);
     writer.WritePropertyName("power");
     writer.WriteValue(this.Power);
     writer.WriteEndObject();
 }
 private void WriteExtendedJson(Newtonsoft.Json.JsonWriter writer, BsonRegularExpression regularExpression)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("$regex");
     writer.WriteValue(regularExpression.Pattern);
     writer.WritePropertyName("$options");
     writer.WriteValue(regularExpression.Options);
     writer.WriteEndObject();
 }
Пример #15
0
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("r");
     writer.WriteValue(this.R);
     writer.WritePropertyName("g");
     writer.WriteValue(this.G);
     writer.WritePropertyName("b");
     writer.WriteValue(this.B);
     writer.WriteEndObject();
 }
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("x");
     writer.WriteValue(this.X);
     writer.WritePropertyName("y");
     writer.WriteValue(this.Y);
     writer.WritePropertyName("z");
     writer.WriteValue(this.Z);
     writer.WriteEndObject();
 }
Пример #17
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WritePropertyName("sprite");
     writer.WriteValue(_spriterAsset);
     writer.WritePropertyName("depth");
     writer.WriteValue(Depth);
     writer.WritePropertyName("scale");
     writer.WriteValue(Scale);
     writer.WritePropertyName("speed");
     writer.WriteValue(DefaultPlaybackSpeed);
 }
Пример #18
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WritePropertyName("gravity");
     writer.WriteValue(Gravity);
     writer.WritePropertyName("friction");
     writer.WriteValue(Friction);
     writer.WritePropertyName("targetedTags");
     writer.WriteStartArray();             // Array of components
     TargetedTags.ForEach(t => writer.WriteValue(t));
     writer.WriteEndArray();
 }
Пример #19
0
        public void Serialization(object obj, Newtonsoft.Json.JsonWriter writer)
        {
            if (obj == null)
            {
                return;
            }
            var objType = obj.GetType();

            if (objType == typeof(string))
            {
                writer.WriteValue(obj as string);
            }
            else if (objType.IsArray || typeof(System.Collections.ICollection).IsAssignableFrom(objType))
            {
                writer.WriteStartArray();
                var list = obj as System.Collections.IList;
                foreach (var element in list)
                {
                    Serialization(element, writer);
                }
                writer.WriteEndArray();
            }
            else if (objType.IsEnum)
            {
                var e = Enum.Parse(objType, obj.ToString());
                writer.WriteValue((int)e);
            }
            else if (objType == typeof(bool))
            {
                var b = (bool)obj;
                int v = b ? 1 : 0;
                writer.WriteValue(v);
            }
            else if (objType.IsClass)
            {
                var properties = objType.GetProperties();
                writer.WriteStartObject();
                foreach (var p in properties)
                {
                    var type  = p.PropertyType;
                    var value = p.GetValue(obj, null);
                    if (value != null)
                    {
                        writer.WritePropertyName(p.Name);
                        Serialization(value, writer);
                    }
                }
                writer.WriteEndObject();
            }
            else
            {
                writer.WriteValue(obj);
            }
        }
 private void WriteExtendedJson(Newtonsoft.Json.JsonWriter writer, BsonTimestamp value)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("$timestamp");
     writer.WriteStartObject();
     writer.WritePropertyName("t");
     writer.WriteValue(value.Timestamp);
     writer.WritePropertyName("i");
     writer.WriteValue(value.Increment);
     writer.WriteEndObject();
     writer.WriteEndObject();
 }
Пример #21
0
 protected override void WriteValue(Newtonsoft.Json.JsonWriter writer)
 {
     // Non-fractional (PassWallet for Android requires this)
     if ((decimal)((int)Value) == Value)
     {
         writer.WriteValue((int)Value);
     }
     // Fractional
     else
     {
         writer.WriteValue(Value);
     }
 }
Пример #22
0
        protected override void WriteKeys(Newtonsoft.Json.JsonWriter writer)
        {
            if (!string.IsNullOrEmpty(CurrencyCode))
            {
                writer.WritePropertyName("currencyCode");
                writer.WriteValue(CurrencyCode);
            }

            if (NumberStyle != FieldNumberStyle.Unspecified)
            {
                writer.WritePropertyName("numberStyle");
                writer.WriteValue(NumberStyle.ToString());
            }
        }
        public void Write <T>(T value)
        {
            var converter = _converters.FirstOrDefault(x => x.CanConvert(typeof(T)));

            if (converter.IsNotNull())
            {
                var writtenValue = converter.Write(value);

                _jsonWriter.WriteValue(writtenValue);
                return;
            }

            _jsonWriter.WriteValue(value);
        }
Пример #24
0
 protected override void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     base.WriteToJson(writer);
     writer.WritePropertyName("speed");
     writer.WriteValue(_baseSpeed);
     writer.WritePropertyName("stamina");
     writer.WriteValue(_baseMaxStamina);
     writer.WritePropertyName("expReward");
     writer.WriteValue(_expReward);
     writer.WritePropertyName("targetedTags");
     writer.WriteStartArray();             // Array of components
     TargetedTags.ForEach(t => writer.WriteValue(t));
     writer.WriteEndArray();
 }
Пример #25
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            DbGeography geo = value as DbGeography;

            if (geo == null)
            {
                throw new ArgumentException("Parameter is not a DbGeography", "value");
            }
            writer.WriteStartObject();
            writer.WritePropertyName("Lon");
            writer.WriteValue(geo.Longitude);
            writer.WritePropertyName("Lat");
            writer.WriteValue(geo.Latitude);
            writer.WriteEndObject();
        }
Пример #26
0
        public override void WriteValue(object Value, Newtonsoft.Json.JsonWriter Writer, MudObject Owner)
        {
            var array = Value as System.Collections.BitArray;

            if (array == null)
            {
                throw new InvalidOperationException();
            }

            var builder = new StringBuilder();

            for (int i = 0; i < array.Length; ++i)
            {
                if (array[i] == true)
                {
                    builder.Append("1");
                }
                else
                {
                    builder.Append("0");
                }
            }

            Writer.WriteValue(builder.ToString());
        }
Пример #27
0
        public override void WriteValue(object Value, Newtonsoft.Json.JsonWriter Writer, MudObject Owner)
        {
            var contents = Value as Dictionary <RelativeLocations, List <MudObject> >;

            if (contents == null)
            {
                throw new InvalidOperationException();
            }

            Writer.WriteStartObject();

            foreach (var relloc in contents)
            {
                Writer.WritePropertyName(RelativeLocationToString(relloc.Key));
                Writer.WriteStartArray();

                foreach (var mudObject in relloc.Value.Where(o => o.IsNamedObject && o.IsInstance))
                {
                    Writer.WriteValue(mudObject.GetFullName());
                }

                Writer.WriteEndArray();
            }

            Writer.WriteEndObject();
        }
 private void WriteExtendedJson(Newtonsoft.Json.JsonWriter writer, BsonJavaScript value, Newtonsoft.Json.JsonSerializer serializer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("$code");
     writer.WriteValue(value.Code);
     writer.WriteEndObject();
 }
Пример #29
0
 private void WriteExtendedJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("$maxKey");
     writer.WriteValue(1);
     writer.WriteEndObject();
 }
Пример #30
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            try
            {
                _isWriting = true;

                // Operate on all identifiables with a path less than Entities.xxxxx
                // This will get all properties.
                if (value is Element && writer.Path.Split('.').Length == 1)
                {
                    var ident = (Element)value;
                    writer.WriteValue(ident.Id);
                }
                else
                {
                    var jObject = Newtonsoft.Json.Linq.JObject.FromObject(value, serializer);
                    jObject.AddFirst(new Newtonsoft.Json.Linq.JProperty(_discriminator, GetSubtypeDiscriminator(value.GetType())));
                    writer.WriteToken(jObject.CreateReader());
                }
            }
            finally
            {
                _isWriting = false;
            }
        }