/**
  * Convert a string to an InputStream
  *
  * @param location Location of data to convert to an InputStream
  * @return the location converted to an InputStream
  * @throws AnzoException
  */
 private InputStream getLocationAsStream(String location) throws AnzoException {
   InputStream initializationStream = null;
   if (location.startsWith(resourcePrefix)) {
     String resourceLocation = location.substring(resourcePrefix.length());
     initializationStream = this.getClass().getResourceAsStream(resourceLocation);
     if (initializationStream == null) {
       throw new AnzoException(ExceptionConstants.SERVER.INIT_FILE, resourceLocation);
     }
   } else {
     File initializationFile = new File(location);
     try {
       initializationStream =
           SmartEncodingInputStream.createSmartStream(new FileInputStream(initializationFile));
     } catch (FileNotFoundException e2) {
       throw new AnzoException(
           ExceptionConstants.SERVER.INIT_FILE, initializationFile.getAbsolutePath());
     }
   }
   return initializationStream;
 }
 /*
  * Initialize default system information with data from RepositoryInitializationFile if no system graph information was
  * provided
  */
 private void initializeProvidedRoles(NodeCentricOperationContext context, URI serverURI)
     throws AnzoException {
   SegmentedStatementCollector sc = new SegmentedStatementCollector();
   try {
     if (log.isWarnEnabled()) {
       log.warn(
           LogUtils.RDB_MARKER,
           "Initializing database from files: {}",
           Arrays.toString(rdfInitFiles.toArray()));
     }
     for (String file : rdfInitFiles) {
       ReadWriteUtils.parseStatements(
           SmartEncodingInputStream.createSmartReader(getLocationAsStream(file)),
           RDFFormat.forFileName(file),
           "",
           sc);
     }
   } catch (AnzoException mse) {
     throw new AnzoRuntimeException(mse);
   }
   resetGraph(sc.getStatements(), context, serverURI);
 }