private void displayProviderForLocation(ProgramLocation location, Navigatable navigatable) {
		LocationDescriptor locationDescriptor = getLocationDescriptor(location);
		if (locationDescriptor == null) {
			throw new IllegalArgumentException(
				"Unable to display provider - unknown location: " + location);
		}

		LocationReferencesProvider provider = findProvider(locationDescriptor, navigatable);
		if (provider == null) {
			provider = new LocationReferencesProvider(this, locationDescriptor, navigatable);
		}
		else {
			// just refresh the existing provider
			updateProvider(provider, locationDescriptor);
		}

		tool.showComponentProvider(provider, true);

// REFS: is the following statement true???...it seems that the loading is off the swing thread,
// so it still may not be done at this point!

		// we add the provider here instead of where it is created above to allow the provider to
		// be initialized before this plugin can reference it in its list (this prevents
		// multithreaded access from using the provider before it has been initialized).
		if (!providerList.contains(provider)) {
			providerList.add(provider);
		}
	}
Plugin to show a list of references to the item represented by the location of the cursor.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/navigation/locationreferences/LocationReferencesPlugin.java