internal DreamMessage PostHostInstanceStopByWikiId(DreamContext context, DreamMessage request) { var wikiId = context.GetParam("wikiid", null); if (!string.IsNullOrEmpty(wikiId)) { if (Instancemanager.ShutdownInstance(wikiId)) { return(DreamMessage.Ok(new XDoc("tenant").Attr("wikiid", wikiId).Attr("status", "stopped"))); } return(new DreamMessage(DreamStatus.ServiceUnavailable, null)); } return(DreamMessage.Ok(new XDoc("tenant").Attr("wikiid", wikiId).Attr("status", "notrunning"))); }
internal DreamMessage PostHostInstanceStop(DreamContext context, DreamMessage request) { var dekiContext = DekiContext.CurrentOrNull; if (dekiContext != null) { if (Instancemanager.ShutdownCurrentInstance()) { return(DreamMessage.Ok(new XDoc("tenant").Attr("wikiid", dekiContext.Instance.Id).Attr("status", "stopped"))); } return(new DreamMessage(DreamStatus.ServiceUnavailable, null)); } return(DreamMessage.Ok(new XDoc("tenant").Attr("status", "notrunning"))); }