public static void sendStartupMessage()

in src/main/java/com/google/cloud/spanner/pgadapter/wireprotocol/BootstrapMessage.java [106:175]


  public static void sendStartupMessage(
      DataOutputStream output,
      int connectionId,
      int secret,
      SessionState sessionState,
      Iterable<NoticeResponse> startupNotices)
      throws Exception {
    new AuthenticationOkResponse(output).send(false);
    new KeyDataResponse(output, connectionId, secret).send(false);
    new ParameterStatusResponse(
            output,
            "server_version".getBytes(StandardCharsets.UTF_8),
            sessionState.get(null, "server_version").getSetting().getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "application_name".getBytes(StandardCharsets.UTF_8),
            "PGAdapter".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "is_superuser".getBytes(StandardCharsets.UTF_8),
            "false".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "session_authorization".getBytes(StandardCharsets.UTF_8),
            "PGAdapter".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "integer_datetimes".getBytes(StandardCharsets.UTF_8),
            "on".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "server_encoding".getBytes(StandardCharsets.UTF_8),
            "UTF8".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "client_encoding".getBytes(StandardCharsets.UTF_8),
            "UTF8".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "DateStyle".getBytes(StandardCharsets.UTF_8),
            "ISO,YMD".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "IntervalStyle".getBytes(StandardCharsets.UTF_8),
            "iso_8601".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "standard_conforming_strings".getBytes(StandardCharsets.UTF_8),
            "on".getBytes(StandardCharsets.UTF_8))
        .send(false);
    new ParameterStatusResponse(
            output,
            "TimeZone".getBytes(StandardCharsets.UTF_8),
            ZoneId.systemDefault().getId().getBytes(StandardCharsets.UTF_8))
        .send(false);
    for (NoticeResponse noticeResponse : startupNotices) {
      noticeResponse.send(false);
    }
    ReadyResponse.sendIdleResponse(output);
    output.flush();
  }