kenhuuu commented on code in PR #3334:
URL: https://github.com/apache/tinkerpop/pull/3334#discussion_r2976941187
##########
gremlin-dotnet/src/Gremlin.Net/Driver/Connection.cs:
##########
@@ -80,44 +103,90 @@ public Connection(Uri uri, IMessageSerializer serializer,
/// <summary>
/// Constructor that accepts a pre-configured HttpClient (for
testing).
/// </summary>
- internal Connection(Uri uri, IMessageSerializer serializer,
- ConnectionSettings settings, HttpClient httpClient)
+ internal Connection(Uri uri, IMessageSerializer? requestSerializer,
+ IMessageSerializer responseSerializer,
+ ConnectionSettings settings, HttpClient httpClient,
+ IReadOnlyList<Func<HttpRequestContext, Task>>? interceptors = null)
{
_uri = uri;
- _serializer = serializer;
+ _requestSerializer = requestSerializer;
+ _responseSerializer = responseSerializer;
_settings = settings;
_httpClient = httpClient;
+ _interceptors = interceptors ??
Array.Empty<Func<HttpRequestContext, Task>>();
}
public async Task<ResultSet<T>> SubmitAsync<T>(RequestMessage
requestMessage,
CancellationToken cancellationToken = default)
{
- var requestBytes = await
_serializer.SerializeMessageAsync(requestMessage, cancellationToken)
- .ConfigureAwait(false);
-
- using var content = new ByteArrayContent(requestBytes);
- content.Headers.ContentType = new
MediaTypeHeaderValue(GraphBinaryMimeType);
-
- using var httpRequest = new HttpRequestMessage(HttpMethod.Post,
_uri);
- httpRequest.Content = content;
- httpRequest.Headers.Accept.Add(new
MediaTypeWithQualityHeaderValue(GraphBinaryMimeType));
+ // Build HttpRequestContext with default headers
+ var headers = new Dictionary<string, string>();
+ headers["Accept"] = GraphBinaryMimeType;
Review Comment:
Nit: This should be based on `responseSerializer` not hardcoded, but I guess
it works for now since GraphBinary4 is the only serializer. I imagine there
will be future versions of GraphBinary though.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]