import java.net.URL;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Enumeration;
import org.osgi.framework.Bundle;
import org.osgi.util.tracker.BundleTracker;
import org.simantics.scl.compiler.module.repository.UpdateListener;
import org.simantics.scl.compiler.source.ModuleSource;
-import org.simantics.scl.compiler.source.repository.AbstractModuleSourceRepository;
import org.simantics.scl.compiler.source.repository.ModuleSourceRepository;
import gnu.trove.map.hash.THashMap;
import gnu.trove.procedure.TObjectObjectProcedure;
-import gnu.trove.procedure.TObjectProcedure;
import gnu.trove.set.hash.THashSet;
@Component
-public class BundleModuleSourceRepository extends AbstractModuleSourceRepository implements ModuleSourceRepository {
+public class BundleModuleSourceRepository implements ModuleSourceRepository {
Tracker tracker;
THashMap<String, BundleModuleSource> modules = new THashMap<String, BundleModuleSource>();
}
@Override
- synchronized public void forAllModules(TObjectProcedure<String> procedure) {
- modules.forEachKey(procedure);
+ public synchronized Collection<String> getModuleNames() {
+ return new ArrayList<String>(modules.keySet());
+ }
+
+ @Override
+ public synchronized Collection<String> getDocumentationNames() {
+ return new ArrayList<String>(documentations.keySet());
}
@Override
else
return source.getText();
}
-
- @Override
- synchronized public void forAllDocumentations(TObjectProcedure<String> procedure) {
- documentations.forEachKey(procedure);
- }
-
+
@Override
public void checkUpdates() {
synchronized(this) {