/// <summary> /// Submits the given traversal query to the <see cref="Gremlin.Net.CosmosDb.IGraphClient"/> /// and returns the result /// </summary> /// <typeparam name="T"></typeparam> /// <param name="graphClient">The graph client.</param> /// <param name="traversal">The traversal.</param> /// <param name="serializerSettings">The serializer settings.</param> /// <returns>Returns the result</returns> /// <exception cref="ArgumentNullException">traversal</exception> public static Task <IReadOnlyCollection <T> > SubmitAsync <T>(this IGraphClient graphClient, ITraversal traversal, JsonSerializerSettings serializerSettings) { if (traversal == null) { throw new ArgumentNullException(nameof(traversal)); } var gremlinQuery = traversal.ToGremlinQuery(); return(graphClient.SubmitAsync <T>(gremlinQuery, serializerSettings)); }
/// <summary> /// Submits the given traversal query to the <see cref="Gremlin.Net.CosmosDb.IGraphClient"/> /// and returns the result /// </summary> /// <typeparam name="T"></typeparam> /// <param name="graphClient">The graph client.</param> /// <param name="traversal">The traversal.</param> /// <param name="serializerSettings">The serializer settings.</param> /// <returns>Returns the result</returns> /// <exception cref="ArgumentNullException">traversal</exception> public static async Task <IReadOnlyCollection <T> > SubmitAsync <T>(this IGraphClient graphClient, ITraversal traversal, JsonSerializerSettings serializerSettings) { if (traversal == null) { throw new ArgumentNullException(nameof(traversal)); } var gremlinQuery = traversal.ToGremlinQuery(); var result = await graphClient.SubmitAsync(gremlinQuery); var serializer = JsonSerializer.Create(serializerSettings); return(result.Select(token => token.ToObject <T>(serializer)).ToList()); }