public Yield SiteExport(DreamContext context, DreamMessage request, Result <DreamMessage> response) { // Retrieve the title used for path normalization (if any) Title relToTitle = Utils.GetRelToTitleFromUrl(context) ?? Title.FromDbPath(NS.MAIN, String.Empty, null); // Retrieve data to export XDoc requestDoc = request.ToDocument(); if (requestDoc == null || requestDoc.IsEmpty || !requestDoc.HasName("export")) { throw new PostedDocumentInvalidArgumentException("export"); } // Perform the export MindTouch.Deki.Export.SiteExportBuilder exportBuilder = new MindTouch.Deki.Export.SiteExportBuilder(relToTitle); exportBuilder.Append(requestDoc); response.Return(DreamMessage.Ok(exportBuilder.ToDocument())); yield break; }
public Yield SiteExport(DreamContext context, DreamMessage request, Result<DreamMessage> response) { // Retrieve the title used for path normalization (if any) Title relToTitle = Utils.GetRelToTitleFromUrl(context) ?? Title.FromDbPath(NS.MAIN, String.Empty, null); // Retrieve data to export XDoc requestDoc = request.ToDocument(); if(requestDoc == null || requestDoc.IsEmpty || !requestDoc.HasName("export")) { throw new DreamBadRequestException(String.Format(DekiResources.INVALID_POSTED_DOCUMENT_1, "export")); } // Perform the export MindTouch.Deki.Export.SiteExportBuilder exportBuilder = new MindTouch.Deki.Export.SiteExportBuilder(relToTitle); exportBuilder.Append(requestDoc); response.Return(DreamMessage.Ok(exportBuilder.ToDocument())); yield break; }