Microsoft.ManagementConsole.PropertySheet.ProcessRequestMessage C# (CSharp) Method

ProcessRequestMessage() private method

private ProcessRequestMessage ( PropertyPageMessageRequestInfo requestInfo ) : PropertyPageMessageResponse
requestInfo Microsoft.ManagementConsole.Internal.PropertyPageMessageRequestInfo
return Microsoft.ManagementConsole.Internal.PropertyPageMessageResponse
        internal PropertyPageMessageResponse ProcessRequestMessage(PropertyPageMessageRequestInfo requestInfo)
        {
            PropertyPage propertyPage = this.GetPropertyPage(requestInfo.PageId);
            this._inRequestOperation = true;
            PropertyPageMessageResponse response = new PropertyPageMessageResponse();
            response.AllowRequestedOperation = false;
            if (requestInfo is ApplyPropertyPageMessageRequestInfo)
            {
                if (propertyPage.OnApply())
                {
                    propertyPage.ClearDirtyFlag();
                    response.AllowRequestedOperation = true;
                }
            }
            else if (requestInfo is OkPropertyPageMessageRequestInfo)
            {
                if (propertyPage.OnOK())
                {
                    propertyPage.ClearDirtyFlag();
                    response.AllowRequestedOperation = true;
                }
            }
            else if (requestInfo is KillActivePropertyPageMessageRequestInfo)
            {
                response.AllowRequestedOperation = propertyPage.OnKillActive();
            }
            else
            {
                if (!(requestInfo is QueryCancelPropertyPageMessageRequestInfo))
                {
                    throw new InvalidOperationException(Microsoft.ManagementConsole.Internal.Utility.LoadResourceString(Microsoft.ManagementConsole.Internal.Strings.PropertySheetUnknownMessage));
                }
                response.AllowRequestedOperation = propertyPage.QueryCancel();
            }
            response.NewActivePageId = this._newActivePageId;
            this._inRequestOperation = false;
            this._newActivePageId = -1;
            return response;
        }