package bndtools.central;
import java.io.File;
import org.osgi.framework.BundleContext;
import org.osgi.util.tracker.ServiceTracker;
import aQute.bnd.osgi.Jar;
import aQute.bnd.service.RepositoryListenerPlugin;
import aQute.bnd.service.RepositoryPlugin;
public class RepositoryListenerPluginTracker extends ServiceTracker<RepositoryListenerPlugin,RepositoryListenerPlugin> implements RepositoryListenerPlugin {
public RepositoryListenerPluginTracker(BundleContext context) {
super(context, RepositoryListenerPlugin.class, null);
}
public void bundleAdded(RepositoryPlugin repository, Jar jar, File file) {
Object[] snapshot = getServices();
if (snapshot != null)
for (Object l : snapshot) {
((RepositoryListenerPlugin) l).bundleAdded(repository, jar, file);
}
}
public void bundleRemoved(RepositoryPlugin repository, Jar jar, File file) {
Object[] snapshot = getServices();
if (snapshot != null)
for (Object l : snapshot) {
((RepositoryListenerPlugin) l).bundleRemoved(repository, jar, file);
}
}
public void repositoryRefreshed(RepositoryPlugin repository) {
Object[] snapshot = getServices();
if (snapshot != null)
for (Object l : snapshot) {
((RepositoryListenerPlugin) l).repositoryRefreshed(repository);
}
}
public void repositoriesRefreshed() {
Object[] snapshot = getServices();
if (snapshot != null)
for (Object l : snapshot) {
((RepositoryListenerPlugin) l).repositoriesRefreshed();
}
}
}