public static SymbolServerService getSymbolServerService(
			SymbolServerInstanceCreatorContext symbolServerInstanceCreatorContext) {
		SymbolServer temporarySymbolServer =
			symbolServerInstanceCreatorContext.getSymbolServerInstanceCreatorRegistry()
				.newSymbolServer(Preferences.getProperty(SYMBOL_STORAGE_DIR_OPTION, "", true),
					symbolServerInstanceCreatorContext);
		FSRL programFSRL = symbolServerInstanceCreatorContext.getProgramFSRL();
		SymbolStore symbolStore = (temporarySymbolServer instanceof SymbolStore tmpSymbolStore)
				? tmpSymbolStore
				: new SameDirSymbolStore(symbolServerInstanceCreatorContext.getRootDir(),
					programFSRL != null ? programFSRL.getName() : null);
		List<SymbolServer> symbolServers =
			symbolServerInstanceCreatorContext.getSymbolServerInstanceCreatorRegistry()
				.createSymbolServersFromPathList(getSymbolSearchPaths(),
					symbolServerInstanceCreatorContext);
		return new SymbolServerService(symbolStore, symbolServers);
	}
Returns a new instance of a {@link SymbolServerService} configured with values from the
application's preferences, defaulting to a minimal instance if there is no config.

@param symbolServerInstanceCreatorContext an object that provides the necessary context to
the SymbolServerInstanceCreatorRegistry to create the SymbolServers that are listed in the
config values
@return a new {@link SymbolServerService} instance, never null
Ghidra/Features/PDB/src/main/java/pdb/PdbPlugin.java