Package org.openrdf.repository

Examples of org.openrdf.repository.RepositoryConnection


    throws StoreException
  {
    // Fetch statements from rep1 and rep2
    Set<Statement> model1, model2;

    RepositoryConnection con1 = rep1.getConnection();
    try {
      model1 = con1.match(null, null, null, true).asSet();
    }
    finally {
      con1.close();
    }

    RepositoryConnection con2 = rep2.getConnection();
    try {
      model2 = con2.match(null, null, null, true).asSet();
    }
    finally {
      con2.close();
    }

    return ModelUtil.equals(model1, model2);
  }
View Full Code Here


  public static boolean isSubset(Repository rep1, Repository rep2)
    throws StoreException
  {
    Set<Statement> model1, model2;

    RepositoryConnection con1 = rep1.getConnection();
    try {
      model1 = con1.match(null, null, null, true).asSet();
    }
    finally {
      con1.close();
    }

    RepositoryConnection con2 = rep2.getConnection();
    try {
      model2 = con2.match(null, null, null, true).asSet();
    }
    finally {
      con2.close();
    }

    return ModelUtil.isSubset(model1, model2);
  }
View Full Code Here

    throws StoreException
  {
    Collection<Statement> model1 = new HashSet<Statement>();
    Collection<Statement> model2 = new HashSet<Statement>();

    RepositoryConnection con1 = rep1.getConnection();
    try {
      con1.match(null, null, null, false).addTo(model1);
    }
    finally {
      con1.close();
    }

    RepositoryConnection con2 = rep2.getConnection();
    try {
      con2.match(null, null, null, false).addTo(model2);
    }
    finally {
      con2.close();
    }

    return difference(model1, model2);
  }
View Full Code Here

      format = RDFParserRegistry.getInstance().getFileFormatForFileName(url.getFile(), RDFFormat.RDFXML);
    }

    InputStream stream = urlCon.getInputStream();
    try {
      RepositoryConnection repCon = getRepositoryConnection();
      try {
        repCon.begin();
        repCon.clear(context);
        repCon.add(stream, url.toExternalForm(), format, context);
        repCon.commit();
        lastModified.put(url, modified);
      }
      finally {
        repCon.close();
      }
    }
    finally {
      stream.close();
    }
View Full Code Here

    if (repository == null) {
      writeError("please open a repository first");
      return;
    }

    RepositoryConnection con;
    try {
      con = repository.getConnection();

      try {
        NamespaceResult namespaces = con.getNamespaces();

        try {
          if (namespaces.hasNext()) {
            writeln("+----------");
            while (namespaces.hasNext()) {
              Namespace ns = namespaces.next();
              writeln("|" + ns.getPrefix() + "  " + ns.getName());
            }
            writeln("+----------");
          }
          else {
            writeln("--no namespaces found--");
          }
        }
        finally {
          namespaces.close();
        }
      }
      finally {
        con.close();
      }
    }
    catch (StoreException e) {
      writeError(e.getMessage());
      logger.error("Failed to show namespaces", e);
View Full Code Here

    if (repository == null) {
      writeError("please open a repository first");
      return;
    }

    RepositoryConnection con;
    try {
      con = repository.getConnection();

      try {
        ContextResult contexts = con.getContextIDs();

        try {
          if (contexts.hasNext()) {
            writeln("+----------");
            while (contexts.hasNext()) {
              Resource context = contexts.next();
              writeln("|" + context.toString());
            }
            writeln("+----------");
          }
          else {
            writeln("--no contexts found--");
          }
        }
        finally {
          contexts.close();
        }
      }
      finally {
        con.close();
      }
    }
    catch (StoreException e) {
      writeError(e.getMessage());
      logger.error("Failed to show contexts", e);
View Full Code Here

      RDFFormat format = Rio.getParserFormatForFileName(dataPath, RDFFormat.RDFXML);

      writeln("Loading data...");
      long startTime = System.nanoTime();

      RepositoryConnection con = repository.getConnection();
      try {
        Resource[] contexts = new Resource[0];

        if (context != null) {
          Resource contextURI;
          if (context.startsWith("_:")) {
            contextURI = con.getValueFactory().createBNode(context.substring(2));
          }
          else {
            contextURI = con.getValueFactory().createURI(context);
          }

          contexts = new Resource[] { contextURI };
        }
        if (dataURL != null) {
          con.add(dataURL, baseURI, format, contexts);
        }
        else {
          con.add(dataFile, baseURI, format, contexts);
        }
      }
      finally {
        con.close();
      }

      long endTime = System.nanoTime();
      writeln("Data has been added to the repository (" + (endTime - startTime) / 1000000 + " ms)");
    }
View Full Code Here

    else {
      writeln("Removing specified contexts...");
    }

    try {
      RepositoryConnection con = repository.getConnection();
      try {
        con.clear(contexts);
      }
      finally {
        con.close();
      }
    }
    catch (SailReadOnlyException e) {
      try {
        if (tryToRemoveLock(e, repository)) {
View Full Code Here

      // advance.
      if ((SERQL.equals(ql) && queryString.toLowerCase().indexOf("using namespace ") == -1)
          || SPARQL.equals(ql) && !queryString.toLowerCase().startsWith("prefix"))
      {
        try {
          RepositoryConnection con = repository.getConnection();
          try {
            Collection<Namespace> namespaces = con.getNamespaces().asList();

            if (!namespaces.isEmpty()) {
              StringBuilder namespaceClause = new StringBuilder(512);

              if (SERQL.equals(ql)) {
                namespaceClause.append(" USING NAMESPACE ");

                for (Namespace namespace : namespaces) {
                  namespaceClause.append(namespace.getPrefix());
                  namespaceClause.append(" = ");
                  namespaceClause.append("<");
                  namespaceClause.append(SeRQLUtil.encodeString(namespace.getName()));
                  namespaceClause.append(">, ");
                }

                // Remove trailing ", "
                namespaceClause.setLength(namespaceClause.length() - 2);

                result += namespaceClause.toString();
              }
              else if (SPARQL.equals(ql)) {
                for (Namespace namespace : namespaces) {
                  namespaceClause.append("PREFIX ");
                  namespaceClause.append(namespace.getPrefix());
                  namespaceClause.append(": ");
                  namespaceClause.append("<");
                  namespaceClause.append(SPARQLUtil.encodeString(namespace.getName()));
                  namespaceClause.append("> ");
                }

                result = namespaceClause.toString() + result;
              }
            }
          }
          finally {
            con.close();
          }
        }
        catch (StoreException e) {
          writeError("Error connecting to repository: " + e.getMessage());
          logger.error("Error connecting to repository", e);
View Full Code Here

    if (repository == null) {
      writeError("please open a repository first");
      return;
    }

    RepositoryConnection con = repository.getConnection();

    try {
      writeln("Evaluating query...");
      long startTime = System.nanoTime();

      Collection<Namespace> namespaces = con.getNamespaces().addTo(new ArrayList<Namespace>());

      TupleResult tupleQueryResult = con.prepareTupleQuery(ql, queryString).evaluate();

      try {
        int resultCount = 0;
        List<String> bindingNames = tupleQueryResult.getBindingNames();

        if (bindingNames.isEmpty()) {
          while (tupleQueryResult.hasNext()) {
            tupleQueryResult.next();
            resultCount++;
          }
        }
        else {
          int columnWidth = (consoleWidth - 1) / bindingNames.size() - 3;

          // Build table header
          StringBuilder sb = new StringBuilder(consoleWidth);
          for (String bindingName : bindingNames) {
            sb.append("| ").append(bindingName);
            StringUtil.appendN(' ', columnWidth - bindingName.length(), sb);
          }
          sb.append("|");
          String header = sb.toString();

          // Build separator line
          sb.setLength(0);
          for (int i = bindingNames.size(); i > 0; i--) {
            sb.append('+');
            StringUtil.appendN('-', columnWidth + 1, sb);
          }
          sb.append('+');
          String separatorLine = sb.toString();

          // Write table header
          writeln(separatorLine);
          writeln(header);
          writeln(separatorLine);

          // Write table rows

          while (tupleQueryResult.hasNext()) {
            BindingSet bindingSet = tupleQueryResult.next();
            resultCount++;

            sb.setLength(0);
            for (String bindingName : bindingNames) {
              Value value = bindingSet.getValue(bindingName);
              String valueStr = getStringRepForValue(value, namespaces);

              sb.append("| ").append(valueStr);
              StringUtil.appendN(' ', columnWidth - valueStr.length(), sb);
            }
            sb.append("|");
            writeln(sb.toString());
          }

          writeln(separatorLine);
        }

        long endTime = System.nanoTime();
        writeln(resultCount + " result(s) (" + (endTime - startTime) / 1000000 + " ms)");
      }
      finally {
        tupleQueryResult.close();
      }
    }
    finally {
      con.close();
    }
  }
View Full Code Here

TOP

Related Classes of org.openrdf.repository.RepositoryConnection

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.