Beispiel #1
0
 public async Task <JObject> ExecuteTransactionAsync(ArangoHandle database, ArangoTransaction request,
                                                     CancellationToken cancellationToken = default)
 {
     return(await SendAsync <JObject>(HttpMethod.Post,
                                      $"{Server}/_db/{DbName(database)}/_api/transaction",
                                      JsonConvert.SerializeObject(request, JsonSerializerSettings), cancellationToken : cancellationToken));
 }
Beispiel #2
0
 public async Task <T> ExecuteAsync <T>(ArangoHandle database, ArangoTransaction request,
                                        CancellationToken cancellationToken = default)
 {
     return(await SendAsync <T>(null, HttpMethod.Post,
                                ApiPath(database, "transaction"),
                                request, cancellationToken : cancellationToken));
 }
Beispiel #3
0
 public async Task <JObject> ExecuteAsync(ArangoHandle database, ArangoTransaction request,
                                          CancellationToken cancellationToken = default)
 {
     return(await SendAsync <JObject>(HttpMethod.Post,
                                      ApiPath(database, "transaction"),
                                      Serialize(request), cancellationToken : cancellationToken));
 }
Beispiel #4
0
        public async Task <ArangoHandle> BeginAsync(ArangoHandle database, ArangoTransaction request,
                                                    CancellationToken cancellationToken = default)
        {
            var res = await SendAsync <SingleResult <TransactionResponse> >(null, HttpMethod.Post,
                                                                            ApiPath(database, "transaction/begin"),
                                                                            request, cancellationToken : cancellationToken);

            var transaction = res.Result.Id;

            return(new ArangoHandle(database, transaction));
        }
Beispiel #5
0
        public async Task <ArangoHandle> BeginAsync(ArangoHandle database, ArangoTransaction request,
                                                    CancellationToken cancellationToken = default)
        {
            var res = await SendAsync <JObject>(HttpMethod.Post,
                                                ApiPath(database, "transaction/begin"),
                                                Serialize(request), cancellationToken : cancellationToken);

            var transaction = res.GetValue("result").Value <string>("id");

            return(new ArangoHandle(database, transaction));
        }
Beispiel #6
0
        public async Task <T> ExecuteAsync <T>(ArangoHandle database, ArangoTransaction request,
                                               CancellationToken cancellationToken = default)
        {
            if (database.Batches != null)
            {
                throw new NotSupportedException("no transaction inside batch");
            }

            return(await SendAsync <T>(null, HttpMethod.Post,
                                       ApiPath(database, "transaction"),
                                       request, cancellationToken : cancellationToken));
        }
Beispiel #7
0
        public async Task <ArangoHandle> BeginAsync(ArangoHandle database, ArangoTransaction request,
                                                    CancellationToken cancellationToken = default)
        {
            if (database.Batches != null)
            {
                throw new NotSupportedException("no transaction inside batch");
            }

            var res = await SendAsync <SingleResult <TransactionResponse> >(null, HttpMethod.Post,
                                                                            ApiPath(database, "transaction/begin"),
                                                                            request, cancellationToken : cancellationToken);

            var transaction = res.Result.Id;

            return(new ArangoHandle(database, transaction));
        }
Beispiel #8
0
        public async Task <ArangoHandle> BeginTransactionAsync(ArangoHandle database, ArangoTransaction request,
                                                               CancellationToken cancellationToken = default)
        {
            var res = await SendAsync <JObject>(HttpMethod.Post,
                                                $"{Server}/_db/{DbName(database)}/_api/transaction/begin",
                                                JsonConvert.SerializeObject(request, JsonSerializerSettings), cancellationToken : cancellationToken);

            var transaction = res.GetValue("result").Value <string>("id");

            return(new ArangoHandle(database, transaction));
        }