public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var push = value as PushNotification; if (push == null) { writer.WriteNull(); return; } writer.StartObject(); // Write push type if (string.IsNullOrWhiteSpace(push.Query) == false) writer.WriteProperty("query", push.Query); else if( push.Channels.Count() > 0 ) writer.WriteArray("channels", push.Channels); else if( push.DeviceIds.Count() > 0 ) writer.WriteArray("deviceids", push.DeviceIds); else writer.WriteProperty("broadcast", true); // Write data WriteData(writer, push); // Write platform options WritePlatformOptions(writer, push.PlatformOptions); writer.EndObject(); }
public override void WriteJson(JsonWriter writer) { writer.WriteStartObject(); writer.WriteProperty("mod", Module); writer.WriteProperty("fun", Function); writer.WriteEndObject(); }
// Writes JSON representaion of the method to the specified JsonWriter. // Used to generate Ext.Direct API internal void WriteJson(JsonWriter jsonWriter) { jsonWriter.WriteStartObject(); jsonWriter.WriteProperty("name", this.Name); jsonWriter.WriteProperty("len", this.Len); if (this.IsFormHandler) { jsonWriter.WriteProperty("formHandler", true); } jsonWriter.WriteEndObject(); }
private bool WriteFieldValueFactor(JsonWriter writer, IFieldValueFactorFunction value, JsonSerializer serializer) { if (value == null) return false; writer.WritePropertyName("field_value_factor"); writer.WriteStartObject(); { writer.WriteProperty(serializer, "field", value.Field); writer.WriteProperty(serializer, "factor", value.Factor); writer.WriteProperty(serializer, "missing", value.Missing); writer.WriteProperty(serializer, "modifier", value.Modifier); } writer.WriteEndObject(); return true; }
protected override void WriteJson(Entity entity, JsonWriter writer, JsonSerializer serializer) { var conn = entity as Connection; if (conn == null) return; // Write endpoint A if (conn.CreateEndpointA == false) { writer .WriteProperty("__endpointa") .StartObject() .WriteProperty("label", conn.EndpointA.Label) .WriteProperty("articleid", conn.EndpointA.ArticleId) .EndObject(); } else { writer .WriteProperty("__endpointa") .StartObject() .WriteProperty("label", conn.EndpointA.Label) .WriteProperty("article") .WithWriter( w => WriteArticle(w, conn.EndpointA.Content) ) .EndObject(); } // Write endpoint B if (conn.CreateEndpointB == false) { writer .WriteProperty("__endpointb") .StartObject() .WriteProperty("label", conn.EndpointB.Label) .WriteProperty("articleid", conn.EndpointB.ArticleId) .EndObject(); } else { writer .WriteProperty("__endpointb") .StartObject() .WriteProperty("label", conn.EndpointB.Label) .WriteProperty("article") .WithWriter(w => WriteArticle(w, conn.EndpointB.Content)) .EndObject(); } }
public void WriteJson(JsonWriter writer) { writer.WriteStartObject(); writer.WriteProperty("name", Name); if (Params != null) { writer.WriteProperty("params", Params); } else { writer.WriteProperty("len", Len); } if (IsFormHandler) { writer.WriteProperty("formHandler", true); } writer.WriteEndObject(); }
public void Serialize(JsonWriter writer, object obj, JsonSerializer serializer) { if (obj == null) return; var issue = (Issue) obj; writer.WriteStartObject(); writer.WriteValue(RedmineKeys.ISSUE); writer.WriteProperty(RedmineKeys.SUBJECT, issue.Subject); writer.WriteProperty(RedmineKeys.DESCRIPTION, issue.Description); writer.WriteProperty(RedmineKeys.NOTES, issue.Notes); if (issue.Id != 0) { writer.WriteProperty(RedmineKeys.PRIVATE_NOTES, issue.PrivateNotes); } writer.WriteProperty(RedmineKeys.IS_PRIVATE, issue.IsPrivate); writer.WriteIdIfNotNull(RedmineKeys.PROJECT_ID, issue.Project); writer.WriteIdIfNotNull(RedmineKeys.PRIORITY_ID, issue.Priority); writer.WriteIdIfNotNull(RedmineKeys.STATUS_ID, issue.Status); writer.WriteIdIfNotNull(RedmineKeys.CATEGORY_ID, issue.Category); writer.WriteIdIfNotNull(RedmineKeys.TRACKER_ID, issue.Tracker); writer.WriteIdIfNotNull(RedmineKeys.ASSIGNED_TO_ID, issue.AssignedTo); writer.WriteIdIfNotNull(RedmineKeys.FIXED_VERSION_ID, issue.FixedVersion); writer.WriteValueOrEmpty(RedmineKeys.ESTIMATED_HOURS, issue.EstimatedHours); writer.WriteIdOrEmpty(RedmineKeys.PARENT_ISSUE_ID, issue.ParentIssue); writer.WriteDateOrEmpty(RedmineKeys.START_DATE, issue.StartDate); writer.WriteDateOrEmpty(RedmineKeys.DUE_DATE, issue.DueDate); writer.WriteDateOrEmpty(RedmineKeys.UPDATED_ON, issue.DueDate); if (issue.DoneRatio != null) writer.WriteProperty(RedmineKeys.DONE_RATIO, issue.DoneRatio.Value.ToString(CultureInfo.InvariantCulture)); if (issue.SpentHours != null) writer.WriteProperty(RedmineKeys.SPENT_HOURS, issue.SpentHours.Value.ToString(CultureInfo.InvariantCulture)); writer.WriteArray(RedmineKeys.UPLOADS, issue.Uploads, new UploadConverter(), serializer); writer.WriteArray(RedmineKeys.CUSTOM_FIELDS, issue.CustomFields, new IssueCustomFieldConverter(), serializer); writer.WriteIdsArray(RedmineKeys.WATCHER_USER_IDS, issue.Watchers); writer.WriteEndObject(); }
private void WriteTileOptions(JsonWriter writer, TileNotification option) { writer.StartObject(); writer.WriteProperty("notificationtype", "tile"); WriteTile(writer, "wp8", option.WP8Tile); WriteTile(writer, "wp75", option.WP75Tile); WriteTile(writer, "wp7", option.WP7Tile); writer.EndObject(); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var request = value as AtomicCountersRequest; if (request == null) { writer.WriteNull(); return; } writer.WriteStartObject(); writer.WritePropertyName(request.Property ); writer.WriteStartObject(); if( request.IncrementBy > 0 ) writer.WriteProperty("incrementby", request.IncrementBy.ToString()); if( request.DecrementBy > 0 ) writer.WriteProperty("decrementby", request.DecrementBy.ToString()); writer.WriteEndObject(); writer.WriteEndObject(); }
private void WriteWpOptions(JsonWriter writer, WindowsPhoneOptions options) { writer.WriteProperty("wp"); if (options.Notification.WPNotificationType == WPNotificationType.Toast) WriteToastOptions(writer, options.Notification as ToastNotification); else if (options.Notification.WPNotificationType == WPNotificationType.Tile) WriteTileOptions(writer, options.Notification as TileNotification); if (options.Notification.WPNotificationType == WPNotificationType.Raw) WriteRawOptions(writer, options.Notification as RawNotification); }
public void Serialize(JsonWriter writer, object obj, JsonSerializer serializer) { if (obj == null) return; var item = (IssueCustomField)obj; if (item.Values == null) return; var count = item.Values.Count; if (count > 1) { writer.WriteProperty(RedmineKeys.VALUE, item.Values.Select(x => x.Info).ToArray()); } else { writer.WriteProperty(RedmineKeys.VALUE, count > 0 ? item.Values[0].Info : null); } }
protected override void WriteJson(Entity entity, JsonWriter writer, JsonSerializer serializer) { if (entity == null) return; var device = entity as Device; if (device != null) { writer .WriteProperty("__schemaid", device.SchemaId); } }
private bool WriteRandomScore(JsonWriter writer, IRandomScoreFunction value, JsonSerializer serializer) { if (value == null) return false; writer.WritePropertyName("random_score"); writer.WriteStartObject(); { writer.WriteProperty(serializer, "seed", value.Seed); } writer.WriteEndObject(); return true; }
protected override void WriteJson(Entity entity, JsonWriter writer, JsonSerializer serializer) { if (entity == null) return; var user = entity as User; if (user != null) { writer .WriteProperty("__schemaid", user.SchemaId); } }
private bool WriteScriptScore(JsonWriter writer, IScriptScoreFunction value, JsonSerializer serializer) { if (value == null) return false; writer.WritePropertyName("script_score"); writer.WriteStartObject(); { writer.WriteProperty(serializer, "script", value.Script); } writer.WriteEndObject(); return true; }
protected override void WriteJson(Entity entity, JsonWriter writer, JsonSerializer serializer) { if (entity == null) return; var article = entity as Article; if (article != null) { writer .WriteProperty("__schematype", article.Type) .WriteProperty("__schemaid", article.SchemaId); } }
private void WritePlatformOptions(JsonWriter writer, PlatformOptions options) { if (options == null || options.IsEmpty == true ) return; writer.WriteProperty("platformoptions"); writer.StartObject(); if (options.iOS != null) WriteIosOptions(writer, options.iOS); if (options.Android != null) WriteAndroidOptions(writer, options.Android); if (options.WindowsPhone != null) WriteWpOptions(writer, options.WindowsPhone); writer.EndObject(); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var v = value as IScriptQuery; if (v == null) return; writer.WriteStartObject(); if (!v.Name.IsNullOrEmpty()) writer.WriteProperty(serializer, "_name", v.Name); if (v.Boost != null) writer.WriteProperty(serializer, "boost", v.Boost); writer.WritePropertyName("script"); writer.WriteStartObject(); { if (v.Id != null) writer.WriteProperty(serializer, "id", v.Id); if (v.File != null) writer.WriteProperty(serializer, "file", v.File); if (v.Inline != null) writer.WriteProperty(serializer, "inline", v.Inline); if (v.Lang != null) writer.WriteProperty(serializer, "lang", v.Lang); if (v.Params != null) writer.WriteProperty(serializer, "params", v.Params); } writer.WriteEndObject(); writer.WriteEndObject(); }
private static void WriteAttributes(JsonWriter writer, Entity entity, JsonSerializer serializer) { var attr = entity.Attributes.ToArray(); if (attr.Length > 0) { writer.WriteProperty("__attributes"); writer.StartObject(); // Write attributes for (int i = 0; i < attr.Length; i++) writer.WriteProperty(attr[i].Key, attr[i].Value); writer.EndObject(); } }
private void WriteRawBody(JsonWriter writer, RawEmailBody raw) { if (raw == null) writer.WriteProperty("body").WriteNull(); else writer .WriteProperty("body") .StartObject() .WriteProperty("content", raw.Content) .WriteProperty("ishtml", raw.IsHtml) .EndObject(); }
private void WriteSmtp(JsonWriter writer, SmtpServer server) { if (server == null ) return; writer .WriteProperty("smtp") .StartObject() .WriteProperty("host", server.Host ?? null) .WriteProperty("port", server.Port <= 0 ? server.DefaultPort : server.Port) .WriteProperty("username", server.Username) .WriteProperty("password", server.Password) .WriteProperty("enablessl", server.EnableSSL) .EndObject(); }
private void WriteData(JsonWriter writer, PushNotification push) { writer.WritePropertyName("data"); writer.StartObject(); writer .WriteProperty("alert", push.Alert) .WriteProperty("badge", push.Badge, true); foreach (var key in push.Data.Keys) { if (key.Equals("alert", StringComparison.OrdinalIgnoreCase) == true || key.Equals("badge", StringComparison.OrdinalIgnoreCase) == true) continue; writer.WriteProperty(key, push.Data[key]); } writer.EndObject(); }
private static void WriteAcls(JsonWriter writer, List<Claim> allowed, List<Claim> denied, List<ResetRequest> reset) { var map = new Dictionary<SidTypeKey, ClaimGroup>(); allowed.For(x => { ClaimGroup group; var key = new SidTypeKey { Sid = x.Sid, Type = x.ClaimType }; if (map.TryGetValue(key, out group) == false) group = new ClaimGroup { Sid = x.Sid, Type = x.ClaimType }; group.Allowed.Add(x.AccessType); }); denied.For(x => { ClaimGroup group; var key = new SidTypeKey { Sid = x.Sid, Type = x.ClaimType }; if (map.TryGetValue(key, out group) == false) group = new ClaimGroup { Sid = x.Sid, Type = x.ClaimType }; group.Denied.Add(x.AccessType); }); reset.For(x => { ClaimGroup group; var key = new SidTypeKey { Sid = x.Sid, Type = x.Type }; if (map.TryGetValue(key, out group) == false) group = new ClaimGroup { Sid = x.Sid, Type = x.Type }; group.Reset.Add(x.Access); }); writer.WriteStartArray(); map.Values.For(x => { writer.WriteStartObject(); writer.WriteProperty("sid", x.Sid); writer.WriteProperty("type", x.Type.ToString().ToLower()); if (x.Allowed.Count > 0) writer.WriteArray("allow", x.Allowed.Select(y => y.ToString().ToLower())); if (x.Denied.Count > 0) writer.WriteArray("deny", x.Denied.Select(y => y.ToString().ToLower())); if (x.Reset.Count > 0) writer.WriteArray("dontcare", x.Reset.Select(y => y.ToString().ToLower())); writer.WriteEndObject(); }); writer.WriteEndArray(); }
private void WriteAndroidOptions(JsonWriter writer, AndroidOptions options) { writer .WriteProperty("android") .StartObject() .WriteProperty("title", options.NotificationTitle) .EndObject(); }
private void WriteIosOptions(JsonWriter writer, IOsOptions options) { writer .WriteProperty("ios") .StartObject() .WriteProperty("sound", options.SoundFile) .EndObject(); }
private void WriteCyclicTile(JsonWriter writer, CyclicTile tile) { writer .StartObject() .WriteProperty("tiletemplate", "cycle") .WriteProperty("tileid", tile.TileId, true) .WriteProperty("title", tile.FrontTitle, true) .WithWriter( w => { int index = 1; foreach (var image in tile.Images.ToArray()) { writer.WriteProperty(string.Format("cycleimage{0}", index++), image); } }) .EndObject(); }
private void WriteTemplateBody(JsonWriter writer, TemplateBody body) { if (body == null) writer.WriteProperty("body").WriteNull(); else writer .WriteProperty("body") .StartObject() .WriteProperty("templatename", body.TemplateName) .WithWriter( w => { if (body.Keys.Count() == 0) return; w.WritePropertyName("data"); w.StartObject(); foreach (var key in body.Keys) w.WriteProperty(key, body[key]); w.EndObject(); }) .WriteProperty("ishtml", body.IsHtml) .EndObject(); }
public static void WriteJson(JsonWriter writer, Entity entity, JsonSerializer serializer) { // Write id if (string.IsNullOrWhiteSpace(entity.Id) == false) writer.WriteProperty("__id", entity.Id); // Write properties. WriteProperties(writer, entity, serializer); // Write attributes WriteAttributes(writer, entity, serializer); // Write Tags WriteTags(writer, entity, serializer); }
public override void WriteJson(JsonWriter writer) { writer.WriteStartObject(); writer.WriteProperty("name", Name); writer.WriteEndObject(); }
private static void WriteProperties(JsonWriter writer, Entity entity, JsonSerializer serializer) { foreach (var property in entity.Properties) { if (property.Value is NullValue) { writer.WritePropertyName(property.Key); writer.WriteNull(); } else if (property.Value is MultiValue) { var collection = property.Value.GetValues<string>(); writer.WriteArray(property.Key, collection); } else writer.WriteProperty(property.Key, property.Value.GetValue<string>()); } }