docs: public void marshall(Endpoint endpoint, ProtocolMarshaller protocolMarshaller) {
  
          if (endpoint == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(endpoint.getEndpointIdentifier(), ENDPOINTIDENTIFIER_BINDING);
              protocolMarshaller.marshall(endpoint.getEndpointType(), ENDPOINTTYPE_BINDING);
              protocolMarshaller.marshall(endpoint.getEngineName(), ENGINENAME_BINDING);
              protocolMarshaller.marshall(endpoint.getEngineDisplayName(), ENGINEDISPLAYNAME_BINDING);
              protocolMarshaller.marshall(endpoint.getUsername(), USERNAME_BINDING);
              protocolMarshaller.marshall(endpoint.getServerName(), SERVERNAME_BINDING);
              protocolMarshaller.marshall(endpoint.getPort(), PORT_BINDING);
              protocolMarshaller.marshall(endpoint.getDatabaseName(), DATABASENAME_BINDING);
              protocolMarshaller.marshall(endpoint.getExtraConnectionAttributes(), EXTRACONNECTIONATTRIBUTES_BINDING);
              protocolMarshaller.marshall(endpoint.getStatus(), STATUS_BINDING);
              protocolMarshaller.marshall(endpoint.getKmsKeyId(), KMSKEYID_BINDING);
              protocolMarshaller.marshall(endpoint.getEndpointArn(), ENDPOINTARN_BINDING);
              protocolMarshaller.marshall(endpoint.getCertificateArn(), CERTIFICATEARN_BINDING);
              protocolMarshaller.marshall(endpoint.getSslMode(), SSLMODE_BINDING);
              protocolMarshaller.marshall(endpoint.getServiceAccessRoleArn(), SERVICEACCESSROLEARN_BINDING);
              protocolMarshaller.marshall(endpoint.getExternalTableDefinition(), EXTERNALTABLEDEFINITION_BINDING);
              protocolMarshaller.marshall(endpoint.getExternalId(), EXTERNALID_BINDING);
              protocolMarshaller.marshall(endpoint.getDynamoDbSettings(), DYNAMODBSETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getS3Settings(), S3SETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getDmsTransferSettings(), DMSTRANSFERSETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getMongoDbSettings(), MONGODBSETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getKinesisSettings(), KINESISSETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getElasticsearchSettings(), ELASTICSEARCHSETTINGS_BINDING);
              protocolMarshaller.marshall(endpoint.getRedshiftSettings(), REDSHIFTSETTINGS_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }