WriteValue() 공개 메소드

Writes a DateTime value.
public WriteValue ( DateTime value ) : void
value DateTime The value to write.
리턴 void
예제 #1
0
        /// <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 override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			writer.WriteStartObject();

			IPageResponse message = value as IPageResponse;

			if (message != null)
			{
				writer.WritePropertyName("sEcho");
				writer.WriteValue(message.Draw);

				writer.WritePropertyName("iTotalRecords");
				writer.WriteValue(message.TotalRecords);

				writer.WritePropertyName("iTotalDisplayRecords");
				writer.WriteValue(message.TotalFilteredRecords);

				writer.WritePropertyName("aaData");
				serializer.Serialize(writer, message.Data);
			}

			JsonConvertHelper.WriteJson(message, writer, serializer,
				prop => JsonConvertHelper.GetPropertiesFromType(typeof(IPageResponse)).Select(x => x.Name).Contains(prop.Name)
						|| JsonConvertHelper.GetPropertiesFromType(typeof(IPageResponse<>)).Select(x => x.Name).Contains(prop.Name));

			writer.WriteEndObject();
		}
예제 #3
0
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			if (Guid.Empty.Equals(value))
				writer.WriteValue("");
			else
				writer.WriteValue(((Guid)value).ToString());
		}
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			FieldQuery term = (FieldQuery)value;
			if (term != null)
			{
				writer.WriteStartObject();
				writer.WritePropertyName("field");
				writer.WriteStartObject();
				writer.WritePropertyName(term.Field);
				writer.WriteValue(term.QueryString);
				
				if(!term.Boost.Equals(default(float)))
				{
					writer.WritePropertyName("boost");
					writer.WriteValue(term.Boost);	
				}

				if (term.EnablePositionIncrements != default(bool))
				{
					writer.WritePropertyName("enable_position_increments");
					writer.WriteValue(term.EnablePositionIncrements.ToString().ToLower());
				}

				writer.WriteEndObject();
				writer.WriteEndObject();
			}
		}
예제 #5
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var links = (IList<Link>) value;
            writer.WriteStartObject();

            foreach (var link in links)
            {
                writer.WritePropertyName(link.Rel);
                writer.WriteStartObject();
                writer.WritePropertyName("href");
                writer.WriteValue(link.Href);

                if (link.IsTemplated)
                {
                    writer.WritePropertyName("isTemplated");
                    writer.WriteValue(true);
                }

                if (!string.IsNullOrWhiteSpace(link.Title))
                {
                    writer.WritePropertyName("title");
                    writer.WriteValue(link.Title);
                }
                

                writer.WriteEndObject();
            }
            writer.WriteEndObject();
        }
예제 #6
0
        public void Write(JsonWriter writer)
        {
            Validate();

            writer.WriteStartObject();

            writer.WritePropertyName("proximityUUID");
            writer.WriteValue(ProximityUUID);

            if (!string.IsNullOrEmpty(RelevantText))
            {
                writer.WritePropertyName("relevantText");
                writer.WriteValue(RelevantText);
            }

            if (Minor.HasValue)
            {
                writer.WritePropertyName("minor");
                writer.WriteValue(Minor);
            }

            if (Major.HasValue)
            {
                writer.WritePropertyName("major");
                writer.WriteValue(Major);
            }

            writer.WriteEndObject();
        }
예제 #7
0
파일: Table.cs 프로젝트: BrixIT/CRT-Client
        public void FormatJson(ref JsonWriter writer)
        {
            writer.WriteStartObject();

            writer.WritePropertyName("type");
            writer.WriteValue("table");

            writer.WritePropertyName("headers");
            writer.WriteStartArray();
            foreach(var header in this.headers.ToArray())
            {
                writer.WriteValue(header);
            }
            writer.WriteEndArray();

            writer.WritePropertyName("rows");
            writer.WriteStartArray();
            foreach (var row in this.rows.ToArray())
            {
                writer.WriteStartArray();

                foreach( var field in row)
                {
                    writer.WriteValue(field);
                }

                writer.WriteEndArray();
            }
            writer.WriteEndArray();

            writer.WriteEndObject();
        }
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     var sort = value as SortGeoDistanceDescriptor;
     if (sort != null)
     {
         writer.WriteStartObject();
         if (sort._Missing != null)
         {
             writer.WritePropertyName("missing");
             writer.WriteValue(sort._Missing);
         }
         if (sort._Order != null)
         {
             writer.WritePropertyName("order");
             writer.WriteValue(sort._Order);
         }
         if (sort._PinLocation != null)
         {
             writer.WritePropertyName(sort._Field);
             writer.WriteValue(sort._PinLocation);
         }
         if (sort._GeoUnit.HasValue)
         {
             writer.WritePropertyName("unit");
             var v = Enum.GetName(typeof(GeoUnit), sort._GeoUnit.Value);
             writer.WriteValue(v);
         }
         writer.WriteEndObject();
     }
     else
         writer.WriteNull();
 }
예제 #9
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var heartActivitiesIntraday = value as HeartActivitiesIntraday;

            //{
            writer.WriteStartObject();

            // "DatasetInterval" : "1"
            writer.WritePropertyName("DatasetInterval");
            writer.WriteValue(heartActivitiesIntraday.DatasetInterval);

            // "DatasetType" : "SecondsHeartrate"
            writer.WritePropertyName("DatasetType");
            writer.WriteValue(heartActivitiesIntraday.DatasetType);

            writer.WritePropertyName("Dataset");
            writer.WriteStartArray();
            foreach (var datasetInverval in heartActivitiesIntraday.Dataset)
            {
                // "Time" : "2008-09-22T14:01:54.9571247Z"
                writer.WritePropertyName("Time");
                writer.WriteValue(datasetInverval.Time.ToString("o"));

                // "Value": 1
                writer.WritePropertyName("Value");
                writer.WriteValue(datasetInverval.Value);

            }
            writer.WriteEndArray();
            
            //}
            writer.WriteEndObject();

        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			var t = value as ITermsQuery;
			if (t == null) return;

			var settings = serializer.GetConnectionSettings();
			var field = settings.Inferrer.Field(t.Field);

			writer.WriteStartObject();
			{
				if (t.Terms.HasAny())
				{
					writer.WritePropertyName(field);
					serializer.Serialize(writer, t.Terms);
				}
				else if (t.TermsLookup != null)
				{
					writer.WritePropertyName(field);
					serializer.Serialize(writer, t.TermsLookup);
				}
				if (t.Boost.HasValue)
				{
					writer.WritePropertyName("boost");
					writer.WriteValue(t.Boost.Value);
				}
				if (!t.Name.IsNullOrEmpty())
				{
					writer.WritePropertyName("_name");
					writer.WriteValue(t.Name);
				}
			}
			writer.WriteEndObject();
		}
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var collection = (NameValueCollection)value;

            writer.WriteStartObject();

            foreach (var key in collection.AllKeys)
            {
                writer.WritePropertyName(key);

                var values = collection.GetValues(key);
                if (values == null)
                {
                    writer.WriteNull();
                    continue;
                }
                if (values.Length == 1)
                {
                    writer.WriteValue(values[0]);
                }
                else
                {
                    writer.WriteStartArray();

                    foreach (var item in values)
                    {
                        writer.WriteValue(item);
                    }

                    writer.WriteEndArray();
                }

            }
            writer.WriteEndObject();
        }
예제 #12
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var links = new HashSet<Link>((IList<Link>)value, new LinkEqualityComparer());

            writer.WriteStartObject();

            var lookup = links.ToLookup(l => l.Rel);

            foreach (var rel in lookup)
            {
                writer.WritePropertyName(rel.Key);
                if (rel.Count() > 1)
                    writer.WriteStartArray();
                foreach (var link in rel)
                {
                    writer.WriteStartObject();
                    writer.WritePropertyName("href");
                    writer.WriteValue(ResolveUri(link.Href));

                    if (link.IsTemplated)
                    {
                        writer.WritePropertyName("templated");
                        writer.WriteValue(true);
                    }

                    writer.WriteEndObject();
                }
                if (rel.Count() > 1)
                    writer.WriteEndArray();
            }
            writer.WriteEndObject();
        }
예제 #13
0
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     IFieldQuery fq = value as IFieldQuery;
     if (fq != null)
     {
         writer.WriteStartObject();
         writer.WritePropertyName(fq.Field);
         writer.WriteStartObject();
         if (fq is IValue)
         {
             IValue v = fq as IValue;
             writer.WritePropertyName("value");
             writer.WriteValue(v.Value);
         }
         if (fq.Boost != 1.0)
         {
             writer.WritePropertyName("boost");
             writer.WriteValue(fq.Boost);
         }
         writer.WriteEndObject();
         writer.WriteEndObject();
     }
     else
         writer.WriteNull();
 }
예제 #14
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var term = value as Term;
            if (term != null)
            {
                writer.WriteStartObject();
                writer.WritePropertyName(term.Field);
                writer.WriteStartObject();

                    writer.WritePropertyName("value");
                    writer.WriteValue(term.Value);

                if (term.Boost.HasValue)
                {
                    writer.WritePropertyName("boost");
                    writer.WriteValue(term.Boost.Value);
                }
                var multiTerm = value as IMultiTermQuery;
                if (multiTerm != null)
                {
                    if (multiTerm.Rewrite.HasValue)
                    {
                        writer.WritePropertyName("rewrite");
                        writer.WriteValue(Enum.GetName(typeof(RewriteMultiTerm), multiTerm.Rewrite.Value));
                    }
                }

                writer.WriteEndObject();
                writer.WriteEndObject();
            }
            else
                writer.WriteNull();
        }
        /// <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">Serializer</param>
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is DateTime || value is DateTime?)
            {
                DateTime date = value is DateTime ? (DateTime)value : (value as DateTime?).Value;

                if (date != DateTime.MinValue)
                {
                    writer.WriteValue(date.ToString(this.RenderMilliseconds ? DateTimeFormatMs : DateTimeFormat, CultureInfo.InvariantCulture));
                }
                else
                {
                    writer.WriteRawValue("null");
                }

                return;
            }
            else
            {
                DateTimeOffset dateTimeOffset = (DateTimeOffset)value;

                if (dateTimeOffset != DateTimeOffset.MinValue)
                {
                    writer.WriteValue(dateTimeOffset.ToString(DateTimeFormat, CultureInfo.InvariantCulture));
                }
                else
                {
                    writer.WriteRawValue("null");
                }
            }

            writer.WriteRawValue("null");
        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			DisjunctionMaxQuery term = (DisjunctionMaxQuery)value;
			if (term != null)
			{
				if (term.Queries == null || term.Queries.Count < 0)
				{
					throw new ArgumentException();
				}

				writer.WriteStartObject();
				writer.WritePropertyName("dis_max");
				writer.WriteStartObject();
				writer.WritePropertyName("tie_breaker");
				writer.WriteValue(term.TieBreaker);
				writer.WritePropertyName("boost");
				writer.WriteValue(term.Boost);
				writer.WritePropertyName("queries");
				writer.WriteStartArray();
				foreach (var query in term.Queries)
				{
					serializer.Serialize(writer, query);
				}
				writer.WriteEndArray();
				writer.WriteEndObject();
				writer.WriteEndObject();
			}
		}
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            GeoDistanceFilter term = (GeoDistanceFilter)value;
            if (term != null)
            {

                writer.WriteStartObject();
                writer.WritePropertyName("geo_distance");
                writer.WriteStartObject();

                if (!string.IsNullOrEmpty(term.Distance))
                {
                    writer.WritePropertyName("distance");
                    writer.WriteValue(term.Distance);

                    if (!string.IsNullOrEmpty(term.DistanceType))
                    {
                        writer.WritePropertyName("distance_type");
                        writer.WriteValue(term.DistanceType);
                    }
                    if (!string.IsNullOrEmpty(term.Field))
                    {
                        writer.WritePropertyName(term.Field);
                        writer.WriteValue(term.Location);
                    }

                }
                writer.WriteEndObject();
                writer.WriteEndObject();
            }
        }
예제 #18
0
 public override void WriteJson(NewtonsoftJson.JsonWriter writer, object value, NewtonsoftJson.JsonSerializer serializer)
 {
     if (value is Int64)
     {
         writer.WriteValue((long)value);
     }
     else if (value is DateTime)
     {
         writer.WriteValue(((DateTime)value).ToUnixTimeStamp());
     }
     else if (value is DateTime?)
     {
         if (((DateTime?)value).HasValue)
         {
             writer.WriteValue(((DateTime?)value).Value.ToUnixTimeStamp());
         }
         else
         {
             writer.WriteNull();
         }
     }
     else
     {
         writer.WriteNull();
     }
 }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			TermQuery term = (TermQuery)value;
            if (term != null)
            {
                /* Writes the following json
                 *  {
                 *      "term":
                 *      {
                 *          "term.Field": 
                 *          {
                 *              "term": "term.Value",
                 *              "boost": term.Boost
                 *          }
                 *      }
                 *  }
                 */

                writer.WriteStartObject();
                writer.WritePropertyName("term");
                writer.WriteStartObject();
                writer.WritePropertyName(term.Field);
                writer.WriteStartObject();
                writer.WritePropertyName("term");
                writer.WriteValue(term.Value);
                writer.WritePropertyName("boost");
                writer.WriteValue(term.Boost);
                writer.WriteEndObject();
                writer.WriteEndObject();
                writer.WriteEndObject();
            }
            //writer.WriteRawValue(string.Format("{{term: {{ \"{0}\" : {{ \"term\" : \"{1}\", \"boost\":{2} }}}} }}", term.Field, term.Value, term.Boost));
		}
        /// <inheritdoc/>
        public override JsonWriter WriteJson(JsonWriter writer)
        {
            writer.WritePropertyName("inputs");
            writer.WriteStartObject();

            writer.WritePropertyName("module");
            writer.WriteValue(Module);

            writer.WritePropertyName("function");
            writer.WriteValue(Function);

            writer.WritePropertyName("arg");

            writer.WriteStartArray();

            foreach (string arg in Arg)
            {
                writer.WriteValue(arg);
            }

            writer.WriteEndArray();

            writer.WriteEndObject();

            return writer;
        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			if (value == null)
				writer.WriteValue("no");
			else 
				writer.WriteValue(((bool)value) ? "yes" : "no");
		}
        private static void WriteObject(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value == null)
            {
                writer.WriteNull();
                return;
            }

            Type valueType = value.GetType();
            TypeInfo valueTypeInfo = valueType.GetTypeInfo();

            writer.WriteStartObject();

            writer.WritePropertyName("$type");
            writer.WriteValue(NameUtility.GetSimpleAssemblyQualifiedName(valueType));

            writer.WritePropertyName("$value");
            
            if (valueTypeInfo.IsPrimitive)
                writer.WriteValue(value);
            else
                serializer.Serialize(writer, value);

            writer.WriteEndObject();
        }
예제 #23
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var model = value as LinkModel;
            if(model!=null)
            {
                writer.WriteStartObject();

                writer.WritePropertyName("href");
                writer.WriteValue(model.Href);

                writer.WritePropertyName("rel");
                writer.WriteValue(model.Rel);

                if(!model.Method.Equals("GET",StringComparison.OrdinalIgnoreCase))
                {
                    writer.WritePropertyName("method");
                    writer.WriteValue(model.Method);
                }

                if(model.IsTemplated)
                {
                    writer.WritePropertyName("isTemplated");
                    writer.WriteValue(model.IsTemplated);
                }

                writer.WriteEndObject();
            }
        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			CustomScoreQuery term = (CustomScoreQuery)value;
			if (term != null)
			{
				writer.WriteStartObject();

				writer.WritePropertyName("custom_score");
				writer.WriteStartObject();
				
				writer.WritePropertyName("query");
				serializer.Serialize(writer, term.Query);

				writer.WritePropertyName("script");
				writer.WriteValue(term.Script);
				if (term.Params != null && term.Params.Count > 0)
				{
					writer.WritePropertyName("params");
					writer.WriteStartObject();
					foreach (var filter in term.Params)
					{
						writer.WritePropertyName(filter.Key);
						writer.WriteValue(filter.Value);
					}
					writer.WriteEndObject();
				}
				writer.WriteEndObject();
				writer.WriteEndObject();
			}
		}
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			MatchAllQuery term = (MatchAllQuery)value;
			if (term != null)
			{
				writer.WriteStartObject();
				writer.WritePropertyName("match_all");
				writer.WriteStartObject();

				if (!string.IsNullOrEmpty(term.NormsField))
				{
					writer.WritePropertyName("norms_field");
					writer.WriteValue(term.NormsField);
				}

				if (term.Boost > 0)
				{
					writer.WritePropertyName("boost");
					writer.WriteValue(term.Boost);
				}

				writer.WriteEndObject();
				writer.WriteEndObject();
			}
		}
예제 #26
0
        public override JsonWriter WriteJson(JsonWriter writer)
        {
            if(Filters.Count > 0)
            {
                writer.WritePropertyName("inputs");
                writer.WriteStartObject();

                writer.WritePropertyName("bucket");
                writer.WriteValue(_bucket);

                writer.WritePropertyName("key_filters");
                writer.WriteStartArray();

                Filters.ForEach(f => writer.WriteRawValue(f.ToJsonString()));

                writer.WriteEndArray();
                writer.WriteEndObject();
            }
            else
            {
                writer.WritePropertyName("inputs");
                writer.WriteValue(_bucket);
            }

            return writer;
        }
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if ((StripeSubscriptionStatus) value == StripeSubscriptionStatus.PastDue)
         writer.WriteValue (PastDue);
     else
         writer.WriteValue (value.ToString ());
 }
예제 #28
0
        public void Write(JsonWriter writer)
        {
            Validate();

            writer.WriteStartObject();

            writer.WritePropertyName("key");
            writer.WriteValue(Key);

            if (!string.IsNullOrEmpty(ChangeMessage))
            {
                writer.WritePropertyName("changeMessage");
                writer.WriteValue(ChangeMessage);
            }

            if (!string.IsNullOrEmpty(Label))
            {
                writer.WritePropertyName("label");
                writer.WriteValue(Label);
            }

            if (TextAlignment != FieldTextAlignment.Unspecified)
            {
                writer.WritePropertyName("textAlignment");
                writer.WriteValue(TextAlignment);
            }

            WriteKeys(writer);

            writer.WritePropertyName("value");
            WriteValue(writer);

            writer.WriteEndObject();
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value == null)
            {
                writer.WriteNull();
            }
            else
            {
                var notifications = (ClientNotifications)value;
                writer.WriteStartArray();

                foreach (var p in notifications)
                {
                    writer.WriteStartObject();
                    writer.WritePropertyName("id");
                    writer.WriteValue(p.Id.ToString("N"));
                    writer.WritePropertyName("message");
                    writer.WriteValue(p.Message);
                    writer.WritePropertyName("title");
                    writer.WriteValue(p.Title);
                    writer.WritePropertyName("type");
                    writer.WriteValue(p.Type.ToString().ToLower());
                    writer.WriteEndObject();
                }
                writer.WriteEndArray();
            }

        }
예제 #30
0
        public override void WriteJson (JsonWriter writer, object objVal, JsonSerializer serializer)
        {
            if (objVal == null) {
                writer.WriteNull();
                return;
            }

            Type objectType = objVal.GetType(),
                 enumType = GetActualEnumType(objectType);
            EnumInfo enumInfo = GetEnumInfo(enumType);
            ulong val = Convert.ToUInt64(objVal);

            if (!enumType.IsDefined(typeof(FlagsAttribute), false) || val == 0) {
                var valIndex = enumInfo.Values.IndexOf(val);
                writer.WriteValue(valIndex != -1 ? enumInfo.Names[valIndex] : objVal.ToString());
            }
            else {
                var sbVal = new StringBuilder();
                bool isFirstVal = true;

                for (int i = 0; i < enumInfo.Values.Count; i++) {
                    if (enumInfo.Values[i] != 0 && (val & enumInfo.Values[i]) == enumInfo.Values[i]) {
                        val -= enumInfo.Values[i];
                        if (!isFirstVal)
                            sbVal.Append(", ");
                        sbVal.Append(enumInfo.Names[i]);
                        isFirstVal = false;
                    }
                }

                writer.WriteValue(val == 0 ? sbVal.ToString() : objVal.ToString());
            }
        }
예제 #31
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            switch (serializer.TypeNameHandling)
            {
                case TypeNameHandling.All:
                    writer.WriteStartObject();
                    writer.WritePropertyName("$type", false);

                    switch (serializer.TypeNameAssemblyFormat)
                    {
                        case FormatterAssemblyStyle.Full:
                            writer.WriteValue(value.GetType().AssemblyQualifiedName);
                            break;
                        default:
                            writer.WriteValue(value.GetType().FullName);
                            break;
                    }

                    writer.WritePropertyName("$value", false);
                    writer.WriteValue(value);
                    writer.WriteEndObject();
                    break;
                default:
                    writer.WriteValue(value);
                    break;
            }
        }
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value.IsNot<NestedFilter>())
     {
         writer.WriteNull();
         return;
     }
     var filter = (NestedFilter)value;
     writer.WriteStartObject();
     writer.WritePropertyName("nested");
     writer.WriteStartObject();
     if (filter.Path.IsNotNull())
     {
         writer.WritePropertyName("path");
         writer.WriteValue(filter.Path);
     }
     writer.WritePropertyName("filter");
     serializer.Serialize(writer, filter.Filter);
     if (filter.Join.IsNotNull())
     {
         writer.WritePropertyName("join");
         writer.WriteValue(filter.Join);
     }
     writer.WriteEndObject();
     writer.WriteEndObject();
 }
        public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
        {
            writer.WriteStartObject();

            writer.WritePropertyName("title_1");
            writer.WriteValue(Title.Length > 0 ? Title[0] : "");

            writer.WritePropertyName("title_2");
            writer.WriteValue(Title.Length > 1 ? Title[1] : "");

            writer.WritePropertyName("colour");
            if (Color == null)
            {
                new RgbColor(255, 255, 255).WriteToJson(writer);
            }
            else
            {
                Color.WriteToJson(writer);
            }

            writer.WritePropertyName("weight");
            writer.WriteValue(Weight);

            // Write descriptions
            for (int i = 0; i < Description.Length; i++)
            {
                writer.WritePropertyName("description_" + (i + 1));
                writer.WriteValue(Description[i]);
            }
            for (int i = Description.Length; i < 10; i++)
            {
                writer.WritePropertyName("description_" + (i + 1));
                writer.WriteValue("");
            }

            writer.WritePropertyName("preview_scale");
            writer.WriteValue(PreviewScale);

            // Write preview offset if not default
            if (PreviewOffset != NoOffset && (PreviewOffset != null && PreviewOffset.Length == 3))
            {
                writer.WritePropertyName("preview_offset");
                writer.WriteStartObject();
                writer.WritePropertyName("x");
                writer.WriteValue(PreviewOffset[0]);
                writer.WritePropertyName("y");
                writer.WriteValue(PreviewOffset[1]);
                writer.WritePropertyName("z");
                writer.WriteValue(PreviewOffset[2]);
                writer.WriteEndObject();
            }

            writer.WriteEndObject();
        }
예제 #34
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("notWrittenByDefaultSerializer");
     writer.WriteValue("written");
     writer.WriteEndObject();
 }
예제 #35
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            try
            {
                _isWriting = true;

                // Operate on all identifiable Elements with a path less than Entities.xxxxx
                // This will get all properties.
                if (value is Element element && writer.Path.Split('.').Length == 1 && !ElementwiseSerialization)
                {
                    var ident = element;
                    writer.WriteValue(ident.Id);
                }
                else
                {
                    var jObject = Newtonsoft.Json.Linq.JObject.FromObject(value, serializer);
                    if (jObject.TryGetValue(_discriminator, out JToken token))
                    {
                        ((JValue)token).Value = GetDiscriminatorName(value);
                    }
                    else
                    {
                        jObject.AddFirst(new Newtonsoft.Json.Linq.JProperty(_discriminator, GetDiscriminatorName(value)));
                    }
                    writer.WriteToken(jObject.CreateReader());
                }
            }
예제 #36
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            try
            {
                _isWriting = true;

                // Operate on all identifiable Elements with a path less than Entities.xxxxx
                // This will get all properties.
                if (value is Element && writer.Path.Split('.').Length == 1 && !ElementwiseSerialization)
                {
                    var ident = (Element)value;
                    writer.WriteValue(ident.Id);
                }
                else
                {
                    var jObject = Newtonsoft.Json.Linq.JObject.FromObject(value, serializer);
                    if (jObject.ContainsKey(_discriminator))
                    {
                        jObject[_discriminator] = value.GetType().FullName;
                    }
                    else
                    {
                        jObject.AddFirst(new Newtonsoft.Json.Linq.JProperty(_discriminator, value.GetType().FullName));
                    }
                    writer.WriteToken(jObject.CreateReader());
                }
            }
            finally
            {
                _isWriting = false;
            }
        }
예제 #37
0
        /// <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">Serializer</param>
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            string text;

            if (value is DateTime || value is DateTime?)
            {
                DateTime dateTime = value is DateTime ? (DateTime)value : (value as DateTime?).Value;

                if ((dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal ||
                    (dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal)
                {
                    dateTime = dateTime.ToUniversalTime();
                }

                text = dateTime.ToString(ISODateTimeJsonConverter.DateTimeFormat, CultureInfo.InvariantCulture);
            }
            else
            {
                DateTimeOffset dateTimeOffset = (DateTimeOffset)value;

                if ((dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal ||
                    (dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal)
                {
                    dateTimeOffset = dateTimeOffset.ToUniversalTime();
                }

                text = dateTimeOffset.ToString(DateTimeFormat, CultureInfo.InvariantCulture);
            }

            writer.WriteValue(text);
        }
예제 #38
0
        void ParseElement(TextElementDefinition element, int lineNo)
        {
            string value = null;

            if (element.StartString != null && _line.Contains(element.StartString) && (element.LineNo == 0 || element.LineNo == lineNo))
            {
                value = _line.Substring(_line.IndexOf(element.StartString) + element.StartString.Length);
                if (element.EndString != null)
                {
                    value = value.Substring(0, value.IndexOf(element.EndString));
                }
            }
            else if (element.RegEx != null && (element.LineNo == 0 || element.LineNo == lineNo))
            {
                var match = Regex.Match(_line, element.RegEx);
                if (match.Success)
                {
                    value = match.Value;
                }
            }
            else if (element.LineNo != 0 && element.LineNo == lineNo)
            {
                value = _line;
            }

            if (value != null)
            {
                if (element.StripExtraSpaces)
                {
                    value = value.Trim();
                }
                _writer.WritePropertyName(element.Name);
                _writer.WriteValue(value);
            }
        }
 public void WriteToJson(Newtonsoft.Json.JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("name");
     writer.WriteValue(this.Name);
     writer.WritePropertyName("prop");
     writer.WriteValue(this.Prop);
     writer.WritePropertyName("rotation");
     writer.WriteStartArray();
     foreach (Rotation r in this.Rotations)
     {
         r.WriteToJson(writer);
     }
     writer.WriteEndArray();
     writer.WriteEndObject();
 }
예제 #40
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is Unit)
            {
                Unit unit = (Unit)value;

                if (unit.Type == UnitType.Pixel)
                {
                    writer.WriteValue(Convert.ToInt32(((Unit)value).Value));
                }
                else if (unit.Type == UnitType.Percentage)
                {
                    writer.WriteValue(unit.Value.ToString() + "%");
                }
            }
        }
예제 #41
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value != null)
     {
         var b = (bool)value;
         writer.WriteValue(b ? 1 : 0);
     }
 }
예제 #42
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     Structurizr.PaperSize paperSize = value as Structurizr.PaperSize;
     if (paperSize != null)
     {
         writer.WriteValue(paperSize.Key);
     }
 }
예제 #43
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is Margins)
            {
                writer.WriteValue(((Margins)value).ToString());
            }

            return;
        }
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
 {
     if (value is string)
     {
         if (value == null)
         {
             writer.WriteValue(DefaultNullString);
         }
     }
 }
예제 #45
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            IHtmlString source = value as IHtmlString;

            if (source == null)
            {
                return;
            }

            writer.WriteValue(source.ToString());
        }
 private void WriteConnectedObjects(ChildTableQuery ctq, SQLiteDataReader sdr, Newtonsoft.Json.JsonWriter wr, bool includeThids)
 {
     //string value;
     wr.WritePropertyName(ctq.Connection.FullName);
     wr.WriteStartArray();
     while (sdr.Read())
     {
         wr.WriteStartObject();
         if (_settings.IncludeConnectionInfo)
         {
             wr.WritePropertyName("Connection");
             wr.WriteValue(ctq.Connection.Name);
             wr.WritePropertyName("ToCategory");
             wr.WriteValue(ctq.Connection.ToCategory);
         }
         WriteObjects(sdr, wr, includeThids);
         wr.WriteEndObject();
     }
     wr.WriteEndArray();
 }
예제 #47
0
            /// <summary>
            /// Serialise an API event to JSON
            /// </summary>
            /// <returns>JObject of the event</returns>
            public void Serialise(Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer)
            {
                writer.WriteStartArray();

                writer.WriteValue(Graph !.ConstructedTime);
                writer.WriteValue(Node !.Index);
                writer.WriteValue(Index);
                writer.WriteValue(Repeats);
                writer.WriteValue(UniqID);

                if (APIDetails.HasValue)
                {
                    serializer.Serialize(writer, APIDetails);
                }
                else
                {
                    writer.WriteNull();
                }
                writer.WriteEndArray();
            }
예제 #48
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            //writer.WriteValue(((DateTime)value).ToString("d", CultureInfo.CreateSpecificCulture("fr-BE")));
            writer.WriteValue(((DateTime)value).ToString("dd/MM/yyyy hh:mm"));

            // General Datetime pattern (short-time) 6/15/2009 1:45:30 PM -> 6/15/2009 1:45:30 PM (en-US)
            //writer.WriteValue(((DateTime)value).ToString("g", CultureInfo.CreateSpecificCulture("en-US")));

            // Full date/time pattern (short time) 6/15/2009 1:45:30 PM -> Monday, June 15, 2009 1:45 PM (en-US)
            //writer.WriteValue(((DateTime)value).ToString("f", CultureInfo.CreateSpecificCulture("en-US")));
        }
예제 #49
0
        public override void ValueToJson(Newtonsoft.Json.JsonWriter writer, Row row, JsonSerializer serializer)
        {
            var value = _getValue(row);

            if (value == null)
            {
                writer.WriteNull();
            }
            else if (EnumType == null)
            {
                writer.WriteValue(value.Value);
            }
            else if (EnumType.IsEnum)
            {
                writer.WriteValue(Enum.GetName(EnumType, value.Value));
            }
            else if (EnumType.IsSubclassOf(typeof(DataEnum)))
            {
                writer.WriteValue(DataEnum.ConvertFromInt32(EnumType, value.Value).Key);
            }
        }
예제 #50
0
 /// <summary>
 /// Writes the JSON representation of the DateTime object.
 /// </summary>
 /// <param name="writer">The Newtonsoft.Json.JsonWriter to write to.</param>
 /// <param name="value">The value.</param>
 /// <param name="serializer">The calling serializer.</param>
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is DateTime)
     {
         Int64 totalSeconds = (Int64)((DateTime)value - UnixStartTime).TotalSeconds;
         writer.WriteValue(totalSeconds);
     }
     else
     {
         throw new ArgumentException(RMResources.DateTimeConverterInvalidDateTime, "value");
     }
 }
예제 #51
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (DateTime.MinValue.Equals(value))
     {
         writer.WriteNull();
     }
     else
     {
         DateTime date = (DateTime)value;
         writer.WriteValue(date.ToUniversalTime().ToString(@"yyyy-MM-dd\THH:mm:ss.fff\Z"));
     }
 }
예제 #52
0
        private void WriteIdsArrayJson(Newtonsoft.Json.JsonWriter writer, IEnumerable <object> value, Newtonsoft.Json.JsonSerializer serializer)
        {
            IEnumerator <Object> collectionEnumerator = (value as IEnumerable <object>).GetEnumerator();

            writer.WriteStartArray();
            while (collectionEnumerator.MoveNext())
            {
                var serializable = collectionEnumerator.Current;
                writer.WriteValue(this.GetIdFor(serializable));
            }
            writer.WriteEndArray();
        }
예제 #53
0
        /// <summary>
        /// Writes the JSON representation of the object.
        /// </summary>
        /// <param name="writer">The <see cref="T:Newtonsoft.Json.JsonWriter"/> to write to.</param>
        /// <param name="value">The value.</param>
        /// <param name="serializer">The calling serializer.</param>
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer)
        {
            if (value is WeiboDateTime)
            {
                writer.WriteValue(value.ToString());
            }

            if (value is DateTime)
            {
                var dateTime = (DateTime)value;
            }
        }
예제 #54
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            string temp = (string)value ?? "";

            if (temp.IsNotEmpty())
            {
                if (temp.StartsWith("<raw>"))
                {
                    writer.WriteRawValue(temp.Remove(0, 5));
                }
                else
                {
                    writer.WriteValue(temp);
                }

                return;
            }
            writer.WriteValue("");

            return;
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is ShadowMode)
            {
                ShadowMode shadow = (ShadowMode)value;
                switch (shadow)
                {
                case ShadowMode.None:
                    writer.WriteValue(false);
                    break;

                case ShadowMode.Sides:
                case ShadowMode.Frame:
                case ShadowMode.Drop:
                    writer.WriteValue(shadow.ToString().ToLowerInvariant());
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
        }
예제 #56
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            string temp = (string)value ?? "";

            if (temp.IsNotEmpty())
            {
                string rawMarker = TokenUtils.Settings.RawMarker;
                if (temp.StartsWith(rawMarker))
                {
                    writer.WriteRawValue(temp.Remove(0, rawMarker.Length));
                }
                else
                {
                    writer.WriteValue(temp);
                }

                return;
            }
            writer.WriteValue("");

            return;
        }
예제 #57
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is string)
            {
                string temp = (string)value;

                if (temp.IsNotEmpty())
                {
                    writer.WriteValue(DateTimeUtils.ConvertNetToPHP(temp));
                    return;
                }
            }
            writer.WriteRawValue(null);
        }
예제 #58
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            var ext = value as JsonExtension;

            if (ext == null)
            {
                writer.WriteNull();
            }
            else
            {
                var json = ext.Serialize();
                writer.WriteValue(json);
            }
        }
예제 #59
0
 public override void WriteJson(
     Newtonsoft.Json.JsonWriter writer,
     object value,
     JsonSerializer serializer)
 {
     if (value is FileInfo FileInfo)
     {
         writer.WriteValue(FileInfo.FullName);
     }
     else
     {
         throw new ArgumentOutOfRangeException(nameof(value));
     }
 }
예제 #60
0
            public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
            {
                if (value.GetType() == typeof(float))
                {
                    var roundedValue = Math.Round((float)value, Precission);
                    var intValue     = (int)roundedValue;

                    if (intValue == roundedValue)
                    {
                        writer.WriteRawValue(intValue.ToString());
                    }
                    else
                    {
                        writer.WriteValue(roundedValue);
                    }

                    return;
                }

                if (value.GetType() == typeof(double))
                {
                    var roundedValue = Math.Round((double)value, Precission);
                    var longValue    = (long)roundedValue;

                    if (longValue == roundedValue)
                    {
                        writer.WriteRawValue(longValue.ToString());
                    }
                    else
                    {
                        writer.WriteValue(roundedValue);
                    }

                    return;
                }
            }