private void LicenseValidatorOnLicenseInvalidated(InvalidationType invalidationType) { var document = docDb.Get("Raven/WarningMessages", null); WarningMessagesHolder messagesHolder = document == null ? new WarningMessagesHolder() : document.DataAsJson.JsonDeserialization <WarningMessagesHolder>(); if (messagesHolder.Messages.Any(warnMsg => warnMsg.StartsWith("Licensing:")) == false) { messagesHolder.Messages.Add("Licensing: RavenDB license has expired at " + licenseValidator.ExpirationDate.ToShortDateString()); } docDb.Put("Raven/WarningMessages", null, JObject.FromObject(messagesHolder), new JObject(), null); }
public static void RemoveWarnings(DocumentDatabase db, string prefix) { var document = db.Get("Raven/WarningMessages", null); WarningMessagesHolder messagesHolder = document == null ? new WarningMessagesHolder() : document.DataAsJson.JsonDeserialization <WarningMessagesHolder>(); // remove anything else with this prefix var removed = messagesHolder.Messages.RemoveWhere(x => x.StartsWith(prefix)); if (removed == 0) { return; } db.Put("Raven/WarningMessages", null, RavenJObject.FromObject(messagesHolder), new RavenJObject(), null); }
public static void AddWarning(DocumentDatabase db, string prefix, string msg) { var document = db.Get("Raven/WarningMessages", null); WarningMessagesHolder messagesHolder = document == null ? new WarningMessagesHolder() : document.DataAsJson.JsonDeserialization <WarningMessagesHolder>(); var message = prefix + ": " + msg; if (messagesHolder.Messages.Add(message) == false) { return; //already there } // remove anything else with this prefix messagesHolder.Messages.RemoveWhere(x => x.StartsWith(prefix) && x != message); db.Put("Raven/WarningMessages", null, RavenJObject.FromObject(messagesHolder), new RavenJObject(), null); }