Example #1
0
        internal async Task Startup()
        {
            // Read and skip the startup message
            await _readBuffer.EnsureAsync(4);

            var startupMessageLen = _readBuffer.ReadInt32();
            await _readBuffer.EnsureAsync(startupMessageLen - 4);

            _readBuffer.Skip(startupMessageLen - 4);

            WriteAuthenticateOk();
            WriteParameterStatuses(new Dictionary <string, string>
            {
                { "server_version", "13" },
                { "server_encoding", "UTF8" },
                { "client_encoding", "UTF8" },
                { "application_name", "Mock" },
                { "is_superuser", "on" },
                { "session_authorization", "foo" },
                { "DateStyle", "ISO, MDY" },
                { "IntervalStyle", "postgres" },
                { "TimeZone", "UTC" },
                { "integer_datetimes", "on" },
                { "standard_conforming_strings", "on" }
            });
            WriteBackendKeyData(ProcessId, BackendSecret);
            WriteReadyForQuery();

            await FlushAsync();
        }
Example #2
0
        internal async Task SkipMessage()
        {
            await _readBuffer.EnsureAsync(4);

            var len = _readBuffer.ReadInt32();
            await _readBuffer.EnsureAsync(len - 4);

            _readBuffer.Skip(len - 4);
        }