Exemplo n.º 1
0
        /// <summary>
        /// Executes a query on the store which does not expect a result.
        /// </summary>
        /// <param name="update">SPARQL Update to be executed.</param>
        /// <param name="transaction">An optional transaction.</param>
        public override void ExecuteNonQuery(SparqlUpdate update, ITransaction transaction = null)
        {
            if (!_connector.UpdateSupported)
            {
                throw new Exception("This store does not support SPARQL update.");
            }

            string q = update.ToString();

            if (_stardogTransaction?.IsActive ?? false)
            {
                Log?.Invoke($"**{q}");

                var converter = new StardogUpdateSparqlConverter(this);
                converter.ParseQuery(q);

                Log?.Invoke($"UpdateGraph,{converter.Additions.Count},{converter.Removals.Count},{JsonConvert.SerializeObject(converter.Additions)},{JsonConvert.SerializeObject(converter.Removals)}");

                _stardogTransaction.AddTripleCount    += converter.Additions.Count;
                _stardogTransaction.RemoveTripleCount += converter.Removals.Count;

                _connector.UpdateGraph(converter.GraphUri, converter.Additions, converter.Removals);
            }
            else
            {
                // No transaction so just call update with the query
                Log?.Invoke(q);

                _connector.Update(q);
            }
        }
Exemplo n.º 2
0
        public void ExecuteInsert(IEnumerable <MiddlewareParameter> parameters, Session session)
        {
            StardogConnector          theConnector = getConnector(session);
            SparqlParameterizedString query        = getQuery(parameters, sparql);

            try
            {
#if DEBUG
                Console.WriteLine(query.ToString());
#endif
                theConnector.Update(query.ToString());
            }
            catch (Exception ex)
            {
                Console.WriteLine("Querry Failed -------------------------------------");
                Console.WriteLine(query);
                Console.WriteLine("----------------------------");
                Console.WriteLine(ex);
            }
        }