private List<URL> getChangedPaths(final GlobalPathRegistryEvent event) { if (!ClassPath.SOURCE.equals(event.getId())) { return null; } List<URL> urls = new ArrayList<URL>(); for (ClassPath cp : event.getChangedPaths()) { for (Entry entry : cp.entries()) { URL url = entry.getURL(); urls.add(url); } } return urls; }
public void pathsAdded(GlobalPathRegistryEvent event) { List<FileObject> addedRoots = new ArrayList<FileObject>(); for (ClassPath cp : event.getChangedPaths()) { for (FileObject fo : cp.getRoots()) { addedRoots.add(fo); } } if (addedRoots.size() > 0) { synchronized (SourcePathProviderImpl.this) { List<FileObject> sourcePaths = new ArrayList<FileObject>( Arrays.asList(originalSourcePath.getRoots())); sourcePaths.addAll(addedRoots); originalSourcePath = ClassPathSupport.createClassPath( sourcePaths.toArray(new FileObject[0])); sourcePaths = new ArrayList<FileObject>( Arrays.asList(smartSteppingSourcePath.getRoots())); sourcePaths.addAll(addedRoots); smartSteppingSourcePath = ClassPathSupport.createClassPath( sourcePaths.toArray(new FileObject[0])); } pcs.firePropertyChange (PROP_SOURCE_ROOTS, null, null); } }
public void pathsRemoved(GlobalPathRegistryEvent event) { List<FileObject> removedRoots = new ArrayList<FileObject>(); for (ClassPath cp : event.getChangedPaths()) { for (FileObject fo : cp.getRoots()) { removedRoots.add(fo); } } if (removedRoots.size() > 0) { synchronized (SourcePathProviderImpl.this) { List<FileObject> sourcePaths = new ArrayList<FileObject>( Arrays.asList(originalSourcePath.getRoots())); sourcePaths.removeAll(removedRoots); originalSourcePath = ClassPathSupport.createClassPath( sourcePaths.toArray(new FileObject[0])); sourcePaths = new ArrayList<FileObject>( Arrays.asList(smartSteppingSourcePath.getRoots())); sourcePaths.removeAll(removedRoots); smartSteppingSourcePath = ClassPathSupport.createClassPath( sourcePaths.toArray(new FileObject[0])); } pcs.firePropertyChange (PROP_SOURCE_ROOTS, null, null); } }