code: public void marshall(CreateDataSourceRequest createDataSourceRequest, ProtocolMarshaller protocolMarshaller) {
  
          if (createDataSourceRequest == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(createDataSourceRequest.getApiId(), APIID_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getName(), NAME_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getDescription(), DESCRIPTION_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getType(), TYPE_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getServiceRoleArn(), SERVICEROLEARN_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getDynamodbConfig(), DYNAMODBCONFIG_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getLambdaConfig(), LAMBDACONFIG_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getElasticsearchConfig(), ELASTICSEARCHCONFIG_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getHttpConfig(), HTTPCONFIG_BINDING);
              protocolMarshaller.marshall(createDataSourceRequest.getRelationalDatabaseConfig(), RELATIONALDATABASECONFIG_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }
docs: Marshall the given parameter object.