org.protege.editor.owl.model.namespace.AbstractNamespaceManager Maven / Gradle / Ivy
package org.protege.editor.owl.model.namespace;
import java.util.ArrayList;
import java.util.List;
/**
* Author: Matthew Horridge
* The University Of Manchester
* Medical Informatics Group
* Date: 19-Jun-2006
* [email protected]
* www.cs.man.ac.uk/~horridgm
*/
public abstract class AbstractNamespaceManager implements NamespaceManager {
private List listeners;
protected AbstractNamespaceManager() {
listeners = new ArrayList<>();
}
public void addListener(NamespaceManagerListener listener) {
listeners.add(listener);
}
public void removeListener(NamespaceManagerListener listener) {
listeners.remove(listener);
}
protected void fireMappingAdded(String prefix, String namespace) {
for (NamespaceManagerListener listener : new ArrayList<>(listeners)) {
listener.mappingAdded(prefix, namespace);
}
}
protected void fireMappingRemoved(String prefix, String namespace) {
for (NamespaceManagerListener listener : new ArrayList<>(listeners)) {
listener.mappingRemoved(prefix, namespace);
}
}
}