Bloom.Api.ApiRequest.RequiredPostJson C# (CSharp) Method

RequiredPostJson() public method

public RequiredPostJson ( ) : string
return string
        public string RequiredPostJson()
        {
            Debug.Assert(_requestInfo.HttpMethod==HttpMethods.Post);
            var json = _requestInfo.GetPostJson();
            if (!string.IsNullOrWhiteSpace(json))
            {
                return json;
            }
            throw new ApplicationException("The query " + _requestInfo.RawUrl + " should have post json");
        }

Usage Example

Example #1
0
        /// <summary>
        /// Get a json of the book's settings.
        /// </summary>
        private void HandleBookSettings(ApiRequest request)
        {
            switch (request.HttpMethod)
            {
            case HttpMethods.Get:
                dynamic settings = new ExpandoObject();
                settings.isRecordedAsLockedDown = _bookSelection.CurrentSelection.RecordedAsLockedDown;
                settings.unlockShellBook        = _bookSelection.CurrentSelection.TemporarilyUnlocked;
                settings.currentToolBoxTool     = _bookSelection.CurrentSelection.BookInfo.CurrentTool;
                request.ReplyWithJson((object)settings);
                break;

            case HttpMethods.Post:
                //note: since we only have this one value, it's not clear yet whether the panel involved here will be more of a
                //an "edit settings", or a "book settings", or a combination of them.
                settings = DynamicJson.Parse(request.RequiredPostJson());
                _bookSelection.CurrentSelection.TemporarilyUnlocked = settings["unlockShellBook"];
                _pageRefreshEvent.Raise(PageRefreshEvent.SaveBehavior.SaveBeforeRefresh);
                request.Succeeded();
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
All Usage Examples Of Bloom.Api.ApiRequest::RequiredPostJson