@Override
	protected void valueAdded(ProgramLocator key, Program program) {
		program.addConsumer(this);
		ProgramFileListener listener = new ProgramFileListener(key);
		program.addDomainFileListener(listener);
		program.addListener(listener);
		listenerMap.put(program, listener);
	}
Constructs new ProgramCache with a duration for keeping programs open and a maximum
number of programs to cache.
@param duration the time that a program will remain in the cache without being
accessed (accessing a cached program resets its time)
@param capacity the maximum number of programs in the cache before least recently used
programs are removed.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/progmgr/ProgramCache.java