OortConfiguration { public static CharSequence escape(String s, char escapeChar) { boolean changed = false; StringBuilder sb = new StringBuilder(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c == ',' || c == '\\') { sb.append('\\'); changed = true; } sb.append(c); } if (changed) { return sb; } return s; }  static OntologyCheck getOntologyCheck(String shortName); static String getOntologyCheckShortName(OntologyCheck check); static List<OntologyCheck> getAvailableChecks(); String getReasonerName(); void setReasonerName(String reasonerName); boolean isAsserted(); void setAsserted(boolean asserted); boolean isSimple(); void setSimple(boolean simple); List<String> getFilterSimpleProperties(); void setFilterSimpleProperties(List<String> filterSimpleProperties); boolean isRelaxed(); void setRelaxed(boolean relaxed); boolean isExpandXrefs(); void setExpandXrefs(boolean expandXrefs); boolean isAllowFileOverWrite(); void setAllowFileOverWrite(boolean allowFileOverWrite); MacroStrategy getMacroStrategy(); void setMacroStrategy(MacroStrategy macroStrategy); boolean isRecreateMireot(); void setRecreateMireot(boolean recreateMireot); boolean isExpandShortcutRelations(); void setExpandShortcutRelations(boolean expandShortcutRelations); boolean isEnforceEL(); void setEnforceEL(boolean enforceEL); boolean isWriteELOntology(); void setWriteELOntology(boolean writeELOntology); Set<String> getSkipFormatSet(); void setSkipFormatSet(Set<String> skipFormatSet); void addToSkipFormatSet(String fmt); void removeFromSkipFormatSet(String fmt); boolean isSkipFormat(String fmt); Set<String> getSourceOntologyPrefixes(); void setSourceOntologyPrefixes(Set<String> sourceOntologyPrefixes); void addSourceOntologyPrefix(String prefix); List<String> getBridgeOntologies(); void setBridgeOntologies(List<String> bridgeOntologies); void addBridgeOntology(String bridgeOntology); boolean isExecuteOntologyChecks(); void setExecuteOntologyChecks(boolean executeOntologyChecks); boolean isAllowEquivalentNamedClassPairs(); void setAllowEquivalentNamedClassPairs(
			boolean allowEquivalentNamedClassPairs); boolean isWriteSubsets(); void setWriteSubsets(boolean isWriteSubsets); boolean isJustifyAssertedSubclasses(); void setJustifyAssertedSubclasses(boolean isJustifyAssertedSubclasses); boolean isUseIsInferred(); void setUseIsInferred(boolean useIsInferred); boolean isRemoveTrailingQualifiers(); void setRemoveTrailingQualifiers(boolean removeTrailingQualifiers); boolean isAutoDetectBridgingOntology(); void setAutoDetectBridgingOntology(boolean isAutoDetectBridgingOntology); boolean isExpandMacros(); void setExpandMacros(boolean expandMacros); boolean isForceRelease(); void setForceRelease(boolean forceRelease); boolean isCheckConsistency(); void setCheckConsistency(boolean checkConsistency); boolean isRemoveDanglingBeforeReasoning(); void setRemoveDanglingBeforeReasoning(
			boolean removeDanglingBeforeReasoning); boolean isAddSupportFromImports(); void setAddSupportFromImports(boolean addSupportFromImports); boolean isAddImportsFromSupports(); void setAddImportsFromSupports(boolean addImportsFromSupports); boolean isTranslateDisjointsToEquivalents(); void setTranslateDisjointsToEquivalents(
			boolean translateDisjointsToEquivalents); boolean isWriteMetadata(); void setWriteMetadata(boolean writeMetadata); Map<IRI, IRI> getRewriteIRIMap(); void setRewriteIRIMap(Map<IRI, IRI> rewriteIRIMap); void addRewriteIRIMap(IRI from, IRI to); OWLDocumentFormat getDefaultFormat(); OWLDocumentFormat getOwlXMLFormat(); Vector<String> getPaths(); void addPath(String path); File getBase(); void setBase(File base); boolean isRepairAnnotationCardinality(); void setRepairAnnotationCardinality(boolean repairAnnotationCardinality); Set<PropertyView> getPropertyViews(); void setPropertyViews(Set<PropertyView> propertyViews); boolean isUseReleaseFolder(); void setUseReleaseFolder(boolean useReleaseFolder); boolean isGafToOwl(); void setGafToOwl(boolean gafToOwl); String getCatalogXML(); void setCatalogXML(String catalogXML); String getVersionSubdirectory(); void setVersionSubdirectory(String versionSubdirectory); boolean isUseQueryOntology(); void setUseQueryOntology(boolean useQueryOntology); String getQueryOntology(); void setQueryOntology(String queryOntology); String getQueryOntologyReference(); void setQueryOntologyReference(String queryOntologyReference); boolean isQueryOntologyReferenceIsIRI(); void setQueryOntologyReferenceIsIRI(boolean queryOntologyReferenceIsIRI); boolean isRemoveQueryOntologyReference(); boolean isWriteLabelOWL(); void setWriteLabelOWL(boolean writeLabelOWL); OWLDocumentFormat getOwlOfnFormat(); void setRemoveQueryOntologyReference(boolean removeQueryOntologyReference); String getJustifyAssertedSubclassesFrom(); void setJustifyAssertedSubclassesFrom(String justifyAssertedSubclassesFrom); boolean isIgnoreLockFile(); void setIgnoreLockFile(boolean ignoreLockFile); List<OntologyCheck> getOntologyChecks(); void setOntologyChecks(List<OntologyCheck> ontologyChecks); int getThreads(); void setThreads(int threads); boolean isRunOboBasicDagCheck(); void setRunOboBasicDagCheck(boolean runOboBasicDagCheck); String getErrorReportFile(); void setErrorReportFile(String errorReportFile); String getTraceReportFile(); void setTraceReportFile(String traceReportFile); boolean isRemoveRedunantAxioms(); void setRemoveRedunantAxioms(boolean removeRedunantAxioms); boolean isCheckPotentialRedundant(); void setCheckPotentialRedundant(boolean checkPotentialRedundant); boolean isVersionReportFiles(); void setVersionReportFiles(boolean versionReportFiles); boolean isCreateErrorModules(); void setCreateErrorModules(boolean createErrorModules); Set<String> getIgnoreSelectedEquivalentPairSet(); void setIgnoreSelectedEquivalentPairSet(
			Set<String> ignoreSelectedEquivalentPairSet); @Override String toString(); static Properties createProperties(OortConfiguration config); static OortConfiguration createOortConfig(Properties properties); static void loadOortConfig(Properties properties, OortConfiguration config); static void addValues(String s, Collection<String> values); static CharSequence escape(String s, char escapeChar); static String unescape(String s); static OortConfiguration readConfig(File file); static void loadConfig(File file, OortConfiguration config); static void writeConfig(File file, OortConfiguration config);  }
@Test public void testEscape() { assertEquals("", OortConfiguration.escape("", ',')); assertEquals("a", OortConfiguration.escape("a", ',')); assertEquals("\\\\", OortConfiguration.escape("\\", ',').toString()); assertEquals("aa\\,bb", OortConfiguration.escape("aa,bb", ',').toString()); }