示例#1
0
        private ResponseResultOrError CallInitialize(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                InitializeResult result = OnInitialize((InitializeParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                NotifyException(e);
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message, data = new InitializeError()
                    {
                        retry = false
                    }
                };
            }
            return(resultOrError);
        }
示例#2
0
        private ResponseResultOrError CallCodeLensResolve(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                CodeLens result = OnCodeLensResolve((CodeLens)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#3
0
        private ResponseResultOrError CallCodeLens(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <CodeLens> result = OnCodeLens((TextDocumentIdentifier)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#4
0
        // --- Generic notification and request handlers ---

        private ResponseResultOrError CallCodeAction(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <Command> result = OnCodeAction((CodeActionParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#5
0
        private ResponseResultOrError CallWorkspaceSymbol(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <SymbolInformation> result = OnWorkspaceSymbol((WorkspaceSymbolParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#6
0
        private ResponseResultOrError CallRename(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                WorkspaceEdit result = OnRename((RenameParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#7
0
        private ResponseResultOrError CallReferences(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <Location> result = OnReferences((ReferenceParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#8
0
        private ResponseResultOrError CallHoverRequest(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                Hover result = OnHover((TextDocumentPosition)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#9
0
        private ResponseResultOrError CallDocumentRangeFormatting(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <TextEdit> result = OnDocumentRangeFormatting((DocumentRangeFormattingParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#10
0
        private ResponseResultOrError CallShutdown(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                shutdownReceived = true;
                OnShutdown();
                resultOrError = new ResponseResultOrError()
                {
                    result = null
                };
            }
            catch (Exception e)
            {
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#11
0
        private ResponseResultOrError CallSignatureHelp(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                SignatureHelp result = OnSignatureHelp((TextDocumentPosition)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                NotifyException(e);
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
示例#12
0
        private ResponseResultOrError CallDocumentSymbol(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                List <SymbolInformation> result = OnDocumentSymbol((TextDocumentIdentifier)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = result
                };
            }
            catch (Exception e)
            {
                NotifyException(e);
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }
        private ResponseResultOrError ReceivedRefreshNodeRequest(RequestType requestType, object parameters)
        {
            ResponseResultOrError resultOrError = null;

            try
            {
                OnDidReceiveNodeRefresh((NodeRefreshParams)parameters);
                resultOrError = new ResponseResultOrError()
                {
                    result = true
                };
            }
            catch (Exception e)
            {
                NotifyException(e);
                resultOrError = new ResponseResultOrError()
                {
                    code = ErrorCodes.InternalError, message = e.Message
                };
            }
            return(resultOrError);
        }