public static Sail createSail(final Properties props,final String file,final Option... args){
  final List<Option> options=args != null ? Arrays.asList(args) : new LinkedList<Option>();
  checkArgs(file,options);
  if (file != null) {
    props.setProperty("com.bigdata.journal.AbstractJournal.file",file);
    props.setProperty("com.bigdata.journal.AbstractJournal.bufferMode","DiskRW");
  }
 else {
    props.setProperty("com.bigdata.journal.AbstractJournal.bufferMode","MemStore");
  }
  if (options.contains(Option.Inference)) {
    props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.axiomsClass","com.bigdata.rdf.axioms.OwlAxioms");
    props.setProperty("com.bigdata.rdf.sail.truthMaintenance","true");
    props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.justify","true");
  }
 else {
    props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.axiomsClass","com.bigdata.rdf.axioms.NoAxioms");
    props.setProperty("com.bigdata.rdf.sail.truthMaintenance","false");
    props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.justify","false");
  }
  props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.textIndex",String.valueOf(options.contains(Option.TextIndex)));
  props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.statementIdentifiers",String.valueOf(options.contains(Option.RDR)));
  props.setProperty("com.bigdata.rdf.store.AbstractTripleStore.quads",String.valueOf(options.contains(Option.Quads)));
  props.setProperty("com.bigdata.service.AbstractTransactionService.minReleaseAge","1");
  props.setProperty("com.bigdata.btree.writeRetentionQueue.capacity","4000");
  props.setProperty("com.bigdata.btree.BTree.branchingFactor","128");
  props.setProperty("com.bigdata.namespace.kb.lex.com.bigdata.btree.BTree.branchingFactor","400");
  props.setProperty("com.bigdata.namespace.kb.spo.com.bigdata.btree.BTree.branchingFactor","1024");
  final Sail sail=getSailProviderInstance(props);
  return sail;
}

public static Sail createSail ( final Properties props , final String file , final Option ... args ) { final List < Option > options = args != null ? Arrays . asList ( args ) : new LinkedList < Option > ( ) ; checkArgs ( file , options ) ; if ( file != null ) { props . setProperty ( "com.bigdata.journal.AbstractJournal.file" , file ) ; props . setProperty ( "com.bigdata.journal.AbstractJournal.bufferMode" , "DiskRW" ) ; } else { props . setProperty ( "com.bigdata.journal.AbstractJournal.bufferMode" , "MemStore" ) ; } if ( options . contains ( Option . Inference ) ) { props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.axiomsClass" , "com.bigdata.rdf.axioms.OwlAxioms" ) ; props . setProperty ( "com.bigdata.rdf.sail.truthMaintenance" , "true" ) ; props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.justify" , "true" ) ; } else { props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.axiomsClass" , "com.bigdata.rdf.axioms.NoAxioms" ) ; props . setProperty ( "com.bigdata.rdf.sail.truthMaintenance" , "false" ) ; props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.justify" , "false" ) ; } props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.textIndex" , String . valueOf ( options . contains ( Option . TextIndex ) ) ) ; props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.statementIdentifiers" , String . valueOf ( options . contains ( Option . RDR ) ) ) ; props . setProperty ( "com.bigdata.rdf.store.AbstractTripleStore.quads" , String . valueOf ( options . contains ( Option . Quads ) ) ) ; props . setProperty ( "com.bigdata.service.AbstractTransactionService.minReleaseAge" , "1" ) ; props . setProperty ( "com.bigdata.btree.writeRetentionQueue.capacity" , "4000" ) ; props . setProperty ( "com.bigdata.btree.BTree.branchingFactor" , "128" ) ; props . setProperty ( "com.bigdata.namespace.kb.lex.com.bigdata.btree.BTree.branchingFactor" , "400" ) ; props . setProperty ( "com.bigdata.namespace.kb.spo.com.bigdata.btree.BTree.branchingFactor" , "1024" ) ; final Sail sail = getSailProviderInstance ( props ) ; return sail ; }
create a new bigdata instance using the specified options .
