WriteRawValue() public method

Writes raw JSON where a value is expected and updates the writer's state.
public WriteRawValue ( string json ) : void
json string The raw JSON to write.
return void
        public override void WriteJson(Newtonsoft.Json.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 override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            Route route = (Route)value;
            writer.WriteStartObject();
            writer.WritePropertyName("id");
            writer.WriteValue(route.Id);
            writer.WritePropertyName("length");
            writer.WriteValue(route.Length);
            writer.WritePropertyName("line");
            writer.WriteRawValue(JsonConvert.SerializeObject(route.Line));
            writer.WritePropertyName("maxM");
            writer.WriteValue(route.MaxM);
            writer.WritePropertyName("minM");
            writer.WriteValue(route.MinM);
            writer.WritePropertyName("region");
            writer.WriteRawValue(JsonConvert.SerializeObject(route.Region));
            writer.WritePropertyName("parts");
            writer.WriteRawValue(JsonConvert.SerializeObject(route.Parts));

            writer.WritePropertyName("style");
            writer.WriteRawValue(JsonConvert.SerializeObject(route.Style));
            writer.WritePropertyName("type");
            writer.WriteValue(route.Type);
            writer.WritePropertyName("points");
            writer.WriteRawValue(JsonConvert.SerializeObject(route.Points));

            writer.WriteEndObject();
        }
示例#3
0
        public override void WriteJson(
            JsonWriter writer, object value, JsonSerializer serializer)
        {
            var settings = new JsonWriterSettings
            {
                OutputMode = JsonOutputMode.Strict
            };


            var cursor = value as IEnumerable <BsonDocument>;

            if (cursor == null)
            {
                var document = value as BsonDocument;

                if (document != null)
                {
                    writer.WriteRawValue(document.ToJson(settings));
                }
            }
            else
            {
                writer.WriteStartArray();

                foreach (BsonDocument document in cursor)
                {
                    writer.WriteRawValue(document.ToJson(settings));
                }

                writer.WriteEndArray();
            }
        }
示例#4
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value != null && value is ComponentListener)
            {
                ComponentListener componentListener = (ComponentListener)value;

                if (!componentListener.IsDefault)
                {
                    if (this.Owner is StateManagedItem)
                    {
                        componentListener.Owner = ((StateManagedItem)this.Owner).Owner;
                    }
                    else if (this.Owner is Control) 
                    {
                        componentListener.Owner = (Control)this.Owner;
                    }

                    componentListener.SetArgumentList(this.Owner.GetType().GetProperty(this.PropertyName));
                    
                    writer.WriteRawValue(new ClientConfig().Serialize(componentListener));
                    return;
                }
            }
            writer.WriteRawValue("{}");
        }
示例#5
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            ListItemCollection items = value as ListItemCollection;

            if (items.Count == 0)
            {
                writer.WriteRawValue("Ext.data.StoreManager.getArrayStore(2)");
                return;
            }

            StringBuilder sb = new StringBuilder("[");

            if (items != null && items.Count > 0)
            {
                foreach (ListItem item in items)
                {
                    sb.Append("[");

                    string val = item.Value.IsEmpty() ? item.Text : item.Value;

                    sb.Append(item.Mode == ParameterMode.Value ? JSON.Serialize(val) : val);
                    sb.Append(",");
                    sb.Append(item.Text.IsEmpty() ? JSON.Serialize(item.Value) : JSON.Serialize(item.Text));
                    sb.Append("],");
                }
                sb.Remove(sb.Length - 1, 1);
            }

            sb.Append("]");

            writer.WriteRawValue(sb.ToString());
        }
示例#6
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value != null && value is ComponentListener)
            {
                ComponentListener componentListener = (ComponentListener)value;

                if (!componentListener.IsDefault)
                {
                    if (this.Owner is BaseItem)
                    {
                        componentListener.Owner = ((BaseItem)this.Owner).Owner;
                    }
                    else if (this.Owner is Control)
                    {
                        componentListener.Owner = (Control)this.Owner;
                    }

                    if (this.PropertyName.IsNotEmpty())
                    {
                        componentListener.SetArgumentList(this.Owner.GetType().GetProperty(this.PropertyName));
                    }

                    writer.WriteRawValue(new ClientConfig().Serialize(componentListener));
                    return;
                }
            }
            writer.WriteRawValue("{}");
        }
        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()); 
                }
            }
        }
示例#8
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            PacketEffect effect = (PacketEffect)value;
                PacketEffectAttribute effectAttribute = effect.GetType().GetCustomAttribute<PacketEffectAttribute>();
                if (effectAttribute == null)
                    throw new NotSupportedException("All PacketEffect classes must have a PacketEffectAttribute !");

                writer.WriteStartObject();
                writer.WritePropertyName(effectAttribute.Name);
                writer.WriteStartObject();
                foreach (PropertyInfo info in value.GetType().GetProperties())
                {
                    string propertyName;
                    JsonPropertyAttribute propertyAttribute = info.GetCustomAttribute<JsonPropertyAttribute>();
                    if (propertyAttribute != null)
                        propertyName = propertyAttribute.PropertyName;
                    else
                        propertyName = info.Name;
                    writer.WritePropertyName(propertyName);

                    JsonConverterAttribute conversionAttribute = info.GetCustomAttribute<JsonConverterAttribute>();
                    if (conversionAttribute != null)
                        writer.WriteRawValue(JsonConvert.SerializeObject(info.GetValue(value), Formatting.None, (JsonConverter)Activator.CreateInstance(conversionAttribute.ConverterType)));
                    else
                        writer.WriteRawValue(JsonConvert.SerializeObject(info.GetValue(value)));
                }
                writer.WriteEndObject();
                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">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");
        }
示例#10
0
 /// <summary>${WP_REST_RectConverter_method_WriteJson_D}</summary>
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     Rect rect = (Rect)value;
     PointConverter ponitConverter = new PointConverter();
     writer.WriteStartObject();
     writer.WritePropertyName("rightBottom");
     writer.WriteRawValue(JsonConvert.SerializeObject(new Point(rect.Right,rect.Bottom), ponitConverter));
     writer.WritePropertyName("leftTop");
     writer.WriteRawValue(JsonConvert.SerializeObject(new Point(rect.Left, rect.Top), ponitConverter));
     writer.WriteEndObject();
 }
示例#11
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            IList items = (IList)value;

            if (value != null && items.Count > 0)
            {
                if (items.Count == 1 && this.IsSingleItemArray())
                {
                    Control item = (Control)items[0];

                    var pnl = item as AbstractPanel;

                    if (!item.Visible)
                    {
                        writer.WriteNull();
                        return;
                    }

                    writer.WriteRawValue(this.Format(items[0] as Control));
                }
                else
                {
                    bool visible = false;

                    foreach (Observable item in items)
                    {
                        if (item.Visible)
                        {
                            visible = true;
                        }
                    }

                    if (visible)
                    {
                        writer.WriteStartArray();

                        foreach (Observable item in items)
                        {
                            if (item.Visible)
                            {
                                writer.WriteRawValue(this.Format(item));
                            }
                        }

                        writer.WriteEndArray();
                    }
                    else
                    {
                        writer.WriteNull();
                    }
                }
            }
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value != null && value is Renderer)
            {
                string temp = ((Renderer)value).ToConfigString();

                if (temp.IsNotEmpty())
                {
                    writer.WriteRawValue(temp);
                    return;
                }
            }
            writer.WriteRawValue("null");
        }
示例#13
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value != null && value is Renderer)
            {
                string temp = ((Renderer)value).ToConfigString();

                if (temp.IsNotEmpty())
                {
                    writer.WriteRawValue(temp);
                    return;
                }
            }
            writer.WriteRawValue("null");
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            switch ((ThreeStateBool)value)
            {
                case ThreeStateBool.False:
                    writer.WriteRawValue("false");
                    return;
                case ThreeStateBool.True:
                    writer.WriteRawValue("true");
                    return;
            }

            writer.WriteRawValue("undefined");
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            switch ((ThreeStateBool)value)
            {
            case ThreeStateBool.False:
                writer.WriteRawValue("false");
                return;

            case ThreeStateBool.True:
                writer.WriteRawValue("true");
                return;
            }

            writer.WriteRawValue("undefined");
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            TermsFilter term = (TermsFilter)value;
            if (term != null)
            {

                var stringBuilder = new StringBuilder();

                stringBuilder.Append("{    \"terms\" : {        \"" + term.Field + "\" : [");

                var i = 0;
                foreach (var t in term.Values)
                {
                    if (i > 0)
                    {
                        stringBuilder.Append(",");
                    }
                    stringBuilder.Append("\"" + t + "\"");
                    i++;
                }

                stringBuilder.Append("]");
//                stringBuilder.Append(",\"_cache\": " + term.Cache.ToString().ToLower());
                stringBuilder.Append("}}");

                writer.WriteRawValue(stringBuilder.ToString());
            }

        }
示例#17
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is string)
     {
         writer.WriteRawValue(new JFunction((string)value).ToScript());
     }
 }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			ElasticQuery term = (ElasticQuery)value;
			if (term != null)
			{
				writer.WriteStartObject();

				writer.WriteRaw("\"from\": " + term.From);
				writer.WriteRaw(",\"size\": " + term.Size + ",");
				writer.WritePropertyName("query");
				serializer.Serialize(writer, term.Query);

				if (term.Fields != null && term.Fields.Count > 0)
				{
					writer.WritePropertyName("fields");
					writer.WriteStartArray();
					foreach (var field in term.Fields)
					{
						writer.WriteRawValue("\"" + field + "\"");
					}
					writer.WriteEndArray();
				}
				if (term.SortItems != null && term.SortItems.Count > 0)
				{
					writer.WritePropertyName("sort");
					writer.WriteStartObject();
					foreach (var sortItem in term.SortItems)
					{
					    if (sortItem != null)
					    {
					        writer.WritePropertyName(sortItem.FieldName);
					        writer.WriteValue(sortItem.SortType.ToString().ToLower());
					    }
					}

					writer.WriteEndObject();
				}

                //facets
                if (term.Facets != null)
                {
                    writer.WritePropertyName("facets");
                    serializer.Serialize(writer, term.Facets);
                }

                //hightlight
                if(term.Hightlight!=null)
                {
                    writer.WritePropertyName("highlight");
                    serializer.Serialize(writer,term.Hightlight);
                }

                if (term.Explain)
                {
                    writer.WriteRaw(",\"explain\": " + term.Explain.ToString().ToLower());
                }

				writer.WriteEndObject();
			}
		}
示例#19
0
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is string)
     {
         writer.WriteRawValue(((string)value).FormatRegexPattern());
     }
 }
        public override JsonWriter WriteJson(JsonWriter writer)
        {
            writer.WritePropertyName("inputs");
            writer.WriteStartArray();

            BucketKeyKeyData.ForEach(bkkd =>
            {
                writer.WriteRawValue(bkkd.Item1);
                writer.WriteRawValue(bkkd.Item2);
                writer.WriteRawValue(bkkd.Item3.ToString());
            });

            writer.WriteEndArray();

            return writer;
        }
示例#21
0
        public void Serialize(JsonWriter writer)
        {
            if (string.IsNullOrWhiteSpace(MimeType) || string.IsNullOrWhiteSpace(Content))
                return;

            var sb = new StringBuilder();
            var sw = new StringWriter(sb);
            using (JsonWriter jw = new JsonTextWriter(sw))
            {
                jw.WritePropertyName(MimeType);

                jw.WriteStartObject();

                if (!string.IsNullOrWhiteSpace(Content))
                {
                    jw.WriteRawValue(Content);
                }

                jw.WriteEndObject();

                if (jw.WriteState == WriteState.Error)
                    sb.Clear();
            }
            writer.WriteRawValue(sb.ToString());
        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			WildcardQuery term = (WildcardQuery)value;

			if (term != null)
				writer.WriteRawValue(string.Format("{{ wildcard: {{ \"{0}\" : {{ \"wildcard\" : \"{1}\", \"boost\":{2} }}}} }}", term.Field, term.WildCardPattern, term.Boost));
		}
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            IList items = (IList)value;

            if (value != null && items.Count > 0)
            {
                if (items.Count == 1 && !CanBeSingleItemArray(items[0]))
                {
                    Control item = (Control)items[0];

                    PanelBase pnl = item as PanelBase;

                    if (!item.Visible || (pnl != null && pnl.Hidden && pnl.ParentComponent is TabPanel))
                    {
                        writer.WriteNull();
                        return;
                    }

                    writer.WriteRawValue(this.Format(items[0] as Control));
                }
                else
                {
                    bool visible = false;

                    foreach (Observable item in items)
                    {
                        PanelBase pnl = item as PanelBase;
                        bool isTab = pnl != null && pnl.ParentComponent is TabPanel;

                        if (item.Visible && (!isTab || !pnl.Hidden))
                        {
                            visible = true;
                        }
                    }

                    if (visible)
                    {
                        writer.WriteStartArray();

                        foreach (Observable item in items)
                        {
                            PanelBase pnl = item as PanelBase;

                            bool isTab = pnl != null && pnl.ParentComponent is TabPanel;

                            if (item.Visible && (!isTab || !pnl.Hidden))
                            {
                                writer.WriteRawValue(this.Format(item));
                            }
                        }

                        writer.WriteEndArray();
                    }
                    else
                    {
                        writer.WriteNull();
                    }
                }
            }
        }
        public override void WriteJson(JsonWriter __writer, object __value, JsonSerializer __serializer)
        {
            var __对象 = (M接收事件)__value;
            __writer.WriteStartObject();
            __writer.WritePropertyName("对象名称");
            __writer.WriteValue(__对象.对象名称);
            __writer.WritePropertyName("事件名称");
            __writer.WriteValue(__对象.事件名称);
            __writer.WritePropertyName("实参列表");
            __writer.WriteStartArray();
            if (__对象.实参列表 != null)
            {
                foreach (var __kv in __对象.实参列表)
                {
                    __writer.WriteStartObject();
                    __writer.WritePropertyName("名称");
                    __writer.WriteValue(__kv.名称);
                    __writer.WritePropertyName("值");

                    if (__kv.值.TrimStart().StartsWith("{") || __kv.值.TrimStart().StartsWith("["))
                    {
                        __writer.WriteRawValue(__kv.值);
                    }
                    else
                    {
                        __writer.WriteValue(__kv.值);
                    }
                    __writer.WriteEndObject();
                }
            }
            __writer.WriteEndArray();
            __writer.WriteEndObject();
        }
		public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
		{
			TermsQuery term = (TermsQuery)value;
			//{    "terms" : {        "tags" : [ "blue", "pill" ],        "minimum_match" : 1    }}
			if (term != null)
			{

			    var stringBuilder = new StringBuilder();

                stringBuilder.Append("{    \"terms\" : {        \"" + term.Field + "\" : [");

			    var i = 0;
				foreach(var t in term.Values)
				{
                    if(i>0)
                    {
                        stringBuilder.Append(",");
                    }
                    stringBuilder.Append("\""+t+"\"");
				    i++;
				}

                stringBuilder.Append("],  \"minimum_match\" : "+term.MinimumMatch+"    }}");

                writer.WriteRawValue(stringBuilder.ToString());
			}

		}
示例#26
0
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is string[])
     {
         writer.WriteRawValue("[{0}]".FormatWith(((string[])value).Join(",", "\"{0}\"")));
     }
 }
示例#27
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            string[] arr = value as string[];

            if (arr != null)
            {
                if (arr.Length == 1)
                {
                    writer.WriteRawValue("\"" + arr[0] + "\"");
                }
                else
                {
                    writer.WriteRawValue("[{0}]".FormatWith(((string[])value).Join(",", "\"{0}\"")));
                }
            }
        }
示例#28
0
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is string)
     {
         writer.WriteRawValue(new JFunction((string)value).ToScript()); 
     }
 }
        /// <summary>
        /// Writes the Object to JSON
        /// </summary>
        /// <param name="writer">A JSON Writer object</param>
        /// <param name="value">Object to be converted</param>
        /// <param name="serializer">JSON Serializer object instance</param>
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (writer != null)
            {
                // We need a custom writer for char arrays, such as are used with SendKeys.
                // JSON.NET does not properly handle converting unicode characters to \uxxxx.
                writer.WriteStartArray();
                char[] arrayObject = value as char[];
                if (arrayObject != null)
                {
                    foreach (char currentChar in arrayObject)
                    {
                        int codepoint = Convert.ToInt32(currentChar);
                        if ((codepoint >= 32) && (codepoint <= 126))
                        {
                            writer.WriteValue(currentChar);
                        }
                        else
                        {
                            string charRepresentation = "\\u" + Convert.ToString(codepoint, 16).PadLeft(4, '0');
                            writer.WriteRawValue("\"" + charRepresentation + "\"");
                        }
                    }
                }

                writer.WriteEndArray();
            }
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var item = (LogEventInfoItem)value;

            writer.WriteStartObject();
            writer.WritePropertyName("ItemId");
            writer.WriteValue(item.ItemId);
            writer.WritePropertyName("SequenceId");
            writer.WriteValue(item.SequenceId);
            writer.WritePropertyName("TimeStamp");
            writer.WriteValue(new DateTimeOffset(item.DateTimeUtc));
            writer.WritePropertyName("Level");
            writer.WriteValue(item.Level.ToString());
            writer.WritePropertyName("Logger");
            writer.WriteValue(item.Logger);
            writer.WritePropertyName("Message");
            writer.WriteValue(item.Message);

            // exception?
            writer.WritePropertyName("ExceptionWrapper");
            var wrapper = item.GetExceptionWrapper();
            if (wrapper != null)
                writer.WriteRawValue(wrapper.ToJson());
            else
                writer.WriteValue((object)null);

            writer.WriteEndObject();
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            ListItemCollection items = value as ListItemCollection;

            //StringBuilder sb = new StringBuilder("new Ext.data.SimpleStore({fields:[\"text\",\"value\"],data :[");
            StringBuilder sb = new StringBuilder("[");

            if (items != null && items.Count > 0)
            {
                foreach (ListItem item in items)
                {
                    sb.Append("[");
                    var val = item.Value.IsEmpty() ? item.Text : item.Value;
                    sb.Append(item.Mode == ParameterMode.Value ? JSON.Serialize(val) : val);
                    sb.Append(",");
                    sb.Append(item.Text.IsEmpty() ? JSON.Serialize(item.Value) : JSON.Serialize(item.Text));
                    sb.Append("],");
                }
                sb.Remove(sb.Length - 1, 1);
            }

            //sb.Append("]})");
            sb.Append("]");

            writer.WriteRawValue(sb.ToString());
        }
示例#32
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 (value == null)
         writer.WriteNull();
     else
         writer.WriteRawValue(EpochTime.ConvertDateTimeToEpoch((DateTime)value).ToString());
 }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var buffer = new StringBuilder();
            buffer.Append("\"");
            var stringValue = (string)value;
            foreach (var c in stringValue)
            {
                var code = (int)c;
                switch (c)
                {
                    case '\"':
                        buffer.Append("\\\"");
                        break;
                    case '\\':
                        buffer.Append("\\\\");
                        break;
                    default:
                        if (code > 127)
                        {
                            buffer.AppendFormat("\\u{0:x4}", code);
                        }
                        else
                        {
                            buffer.Append(c);
                        }
                        break;
                }
            }
            buffer.Append("\"");

            writer.WriteRawValue(buffer.ToString());
        }
示例#35
0
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is int[])
     {
         writer.WriteRawValue("[{0}]".FormatWith(((int[])value).Join(",", "{0}")));
     }
 }
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is string)
     {
         writer.WriteRawValue(new JFunction(TokenUtils.ParseTokens((string)value, false, this.Owner is Control ? (Control)this.Owner : null)).ToScript());
     }
 }
示例#37
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            var flags = value.ToString()
                        .Split(new[] { ", " }, StringSplitOptions.RemoveEmptyEntries)
                        .Select(f => $"\"{f}\"");

            writer.WriteRawValue($"[{string.Join(", ", flags)}]");
        }
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     MatchAllFilter term = (MatchAllFilter)value;
     if (term != null)
     {
         writer.WriteRawValue("{\"match_all\" : { }}");
     }
 }
 /// <summary>
 /// Outputs the string contents as JSON.
 /// </summary>
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     var valueString = value as string;
     if (valueString != null)
         writer.WriteRawValue(valueString);
     else
         serializer.Serialize(writer, value);
 }
示例#40
0
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     JContainer o = value as JContainer;
     if (o != null)
     {
         writer.WriteRawValue(o.ToString(Formatting.None, new JavaScriptDateTimeConverter()));
     }
 }
示例#41
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>
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value)
        {
            if (value is DateTime)
            {
                DateTime date = (DateTime)value;
                if (date != DateTime.MinValue)
                {
                    writer.WriteValue(date.ToString(DateTimeFormat, CultureInfo.InvariantCulture));
                }
                else
                {
                    writer.WriteRawValue("null");
                }
                return;
            }

            writer.WriteRawValue("null");
        }
 /// <summary>${WP_REST_GeometryConverter_method_WriteJson_D}</summary>
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     Geometry geometry = value as Geometry;
     if (geometry != null)
     {
         ServerGeometry sg = geometry.ToServerGeometry();
         writer.WriteRawValue(JsonConvert.SerializeObject(sg));
     }
 }
示例#43
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(JsonWriter writer, object value, JsonSerializer serializer)
        {
			writer.WriteStartArray();
			var g = value as List<IPosition>;
	        var geographicPosition =g[0] as GeographicPosition;
	        var s = string.Format("{0},{1}", geographicPosition.Latitude.ToString(CultureInfo.InvariantCulture), geographicPosition.Longitude.ToString(CultureInfo.InvariantCulture));
			writer.WriteRawValue(s);
	        writer.WriteEndArray();
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }

            string sarifVersionText = ((SarifVersion)value).ConvertToText();
            writer.WriteRawValue(@"""" + sarifVersionText + @"""");
        }
示例#45
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }

            string formattedDate = ((DateTime)value).ToString(DateTimeFormat, CultureInfo.InvariantCulture);
            writer.WriteRawValue(@"""" + formattedDate + @"""");
        }
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value is JFunction)
     {
         writer.WriteRawValue((value as JFunction).ToScript());
     }
     else
     {
         writer.WriteNull();
     }
 }
        public override void WriteJson(
            Newtonsoft.Json.JsonWriter writer,
            object value,
            JsonSerializer serializer)
        {
            switch (value)
            {
            case JsonPayload json:
                writer.WriteRawValue(json);
                break;

            case ISerializableObject _:
                writer.WriteRawValue(Representations.RepresentationManager.ToJson(value));
                break;

            case null:
                writer.WriteNull();
                break;
            }
        }
 /// <summary>
 /// Invoked when data has to be serialized before sending to the caller.
 /// This method will fail if the service code tries to send DateTime
 //  instead of DateTimeOffset.
 /// </summary>
 /// <param name="writer"></param>
 /// <param name="value"></param>
 /// <param name="serializer"></param>
 public override void WriteJson(Newtonsoft.Json.JsonWriter writer,
                                object value,
                                Newtonsoft.Json.JsonSerializer serializer)
 {
     // IF YOU WANT TO DEAL WITH DATETIME
     // THIS SHOWS HOW TO DO THAT
     if (value is DateTime)
     {
         DateTime utcTime = (DateTime)value;
         writer.WriteRawValue(String.Format("\"{0}\"",
                                            ((DateTime)utcTime).ToString(this.DateTimeFormat)));
     }
     // EXAMPLE OF DateTimeOffset formatting
     else if (value is DateTimeOffset)
     {
         DateTimeOffset offs = (DateTimeOffset)value;
         writer.WriteRawValue(String.Format("\"{0} UTC({1:##})\"",
                                            offs.ToString(this.DateTimeFormat), offs.Offset.Minutes));
     }
 }
示例#49
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            ConfigItemCollection items = (ConfigItemCollection)value;

            if (value != null && items.Count > 0)
            {
                foreach (ConfigItem item in items)
                {
                    writer.WritePropertyName(items.CamelName ? Ext.Net.Utilities.StringUtils.ToLowerCamelCase(item.Name) : item.Name);
                    writer.WriteRawValue(item.ValueToString());
                }
            }
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is DateTime)
            {
                DateTime date = (DateTime)value;

                if (date.Equals(DateTime.MinValue))
                {
                    writer.WriteRawValue("null");
                }
                else
                {
                    string template = (date.TimeOfDay == new TimeSpan(0, 0, 0)) ? "{0},{1},{2}" : "{0},{1},{2},{3},{4},{5},{6}";

                    writer.WriteStartConstructor("Date");
                    writer.WriteRawValue(
                        string.Format(template, date.Year, date.Month - 1, date.Day,
                                      date.Hour, date.Minute, date.Second, date.Millisecond));
                    writer.WriteEndConstructor();
                }
            }
        }
示例#51
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);
        }
示例#52
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;
                }
            }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            DynamicConfigDictionary config = (DynamicConfigDictionary)value;

            if (config != null)
            {
                var keys = config.GetDynamicMemberNames();

                foreach (string key in keys)
                {
                    writer.WritePropertyName(Ext.Net.Utilities.StringUtils.ToLowerCamelCase(key));
                    writer.WriteRawValue(JSON.Serialize(config.GetDynamicValue(key), new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver()));
                }
            }
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            Control control = value as Control;

            if (control != null)
            {
                if (!control.Visible)
                {
                    writer.WriteNull();
                    return;
                }

                writer.WriteRawValue(this.Format(control));
            }
        }
示例#55
0
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            LoadMask mask = value as LoadMask;

            if (mask != null && mask.ShowMask)
            {
                string jsonMask = new ClientConfig().Serialize(mask);

                if (jsonMask.IsEmpty() || jsonMask.Equals("{}"))
                {
                    writer.WriteValue(true);
                }
                else
                {
                    writer.WriteRawValue(jsonMask);
                }
            }
        }
示例#56
0
        public override void WriteJson(
            Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            var cursor   = (List <BsonDocument>)value;
            var settings = new JsonWriterSettings
            {
                OutputMode = JsonOutputMode.Strict
            };

            writer.WriteStartArray();

            foreach (BsonDocument document in cursor)
            {
                writer.WriteRawValue(document.ToJson(settings));
            }

            writer.WriteEndArray();
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            if (value is string)
            {
                string re = (string)value;

                if (!re.StartsWith("/", StringComparison.InvariantCulture))
                {
                    re = "/{0}".FormatWith(re);
                }

                if (!re.EndsWith("/", StringComparison.InvariantCulture))
                {
                    re = "{0}/".FormatWith(re);
                }

                writer.WriteRawValue(re);
            }
        }
        public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, JsonSerializer serializer)
        {
            ParameterCollection parameters = value as ParameterCollection;

            if (parameters != null)
            {
                StringBuilder sb = new StringBuilder("{params:{");

                foreach (Parameter parameter in parameters)
                {
                    sb.Append(parameter.ToString()).Append(",");
                }
                if (sb[sb.Length - 1] == ',')
                {
                    sb.Remove(sb.Length - 1, 1);
                }
                sb.Append("}}");

                writer.WriteRawValue(sb.ToString());
            }
        }
示例#59
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;
        }
示例#60
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;
        }