//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: public static boolean processAuthentication(String userAgent, java.util.Map<String,Object> authToken, org.neo4j.bolt.runtime.StateMachineContext context) throws org.neo4j.bolt.runtime.BoltConnectionFatality
        public static bool ProcessAuthentication(string userAgent, IDictionary <string, object> authToken, StateMachineContext context)
        {
            try
            {
                BoltStateMachineSPI boltSpi = context.BoltSpi();

                AuthenticationResult authResult = boltSpi.Authenticate(authToken);
                string username = authResult.LoginContext.subject().username();
                context.AuthenticatedAsUser(username, userAgent);

                StatementProcessor statementProcessor        = new TransactionStateMachine(boltSpi.TransactionSpi(), authResult, context.Clock());
                context.ConnectionState().StatementProcessor = statementProcessor;

                if (authResult.CredentialsExpired())
                {
                    context.ConnectionState().onMetadata("credentials_expired", Values.TRUE);
                }
                context.ConnectionState().onMetadata("server", Values.stringValue(boltSpi.Version()));
                boltSpi.UdcRegisterClient(userAgent);

                return(true);
            }
            catch (Exception t)
            {
                context.HandleFailure(t, true);
                return(false);
            }
        }
示例#2
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private org.neo4j.bolt.runtime.BoltStateMachineState processStreamResultMessage(boolean pull, org.neo4j.bolt.runtime.StateMachineContext context) throws org.neo4j.bolt.runtime.BoltConnectionFatality
        private BoltStateMachineState ProcessStreamResultMessage(bool pull, StateMachineContext context)
        {
            try
            {
                context.ConnectionState().StatementProcessor.streamResult(recordStream => context.ConnectionState().ResponseHandler.onRecords(recordStream, pull));

                return(_readyState);
            }
            catch (AuthorizationExpiredException e)
            {
                context.HandleFailure(e, true);
                return(_failedState);
            }
            catch (Exception e)
            {
                context.HandleFailure(e, false);
                return(_failedState);
            }
        }
示例#3
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private org.neo4j.bolt.runtime.BoltStateMachineState processRunMessage(org.neo4j.bolt.v1.messaging.request.RunMessage message, org.neo4j.bolt.runtime.StateMachineContext context) throws org.neo4j.bolt.runtime.BoltConnectionFatality
        private BoltStateMachineState ProcessRunMessage(RunMessage message, StateMachineContext context)
        {
            try
            {
                long start = context.Clock().millis();
                StatementMetadata statementMetadata = ProcessRunMessage(message, context.ConnectionState().StatementProcessor);
                long end = context.Clock().millis();

                context.ConnectionState().onMetadata("fields", stringArray(statementMetadata.FieldNames()));
                context.ConnectionState().onMetadata("result_available_after", Values.longValue(end - start));

                return(_streamingState);
            }
            catch (AuthorizationExpiredException e)
            {
                context.HandleFailure(e, true);
                return(_failedState);
            }
            catch (Exception t)
            {
                context.HandleFailure(t, false);
                return(_failedState);
            }
        }
示例#4
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: public org.neo4j.bolt.runtime.BoltStateMachineState process(org.neo4j.bolt.messaging.RequestMessage message, org.neo4j.bolt.runtime.StateMachineContext context) throws org.neo4j.bolt.runtime.BoltConnectionFatality
        public override BoltStateMachineState Process(RequestMessage message, StateMachineContext context)
        {
            AssertInitialized();

            if (message is InterruptSignal)
            {
                return(_interruptedState);
            }

            try
            {
                return(ProcessUnsafe(message, context));
            }
            catch (AuthorizationExpiredException e)
            {
                context.HandleFailure(e, true);
                return(_failedState);
            }
            catch (Exception t)
            {
                context.HandleFailure(t, false);
                return(_failedState);
            }
        }