@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); if (delta.getKind() != ADDED || (delta.getFlags() & (MOVED_FROM | MOVED_TO)) == 0) { return; } final Path fromPath = delta.getFromPath(); final Path toPath = delta.getToPath(); if (delta.getResource().isFile()) { onFileChanged(fromPath, toPath); } else { onFolderChanged(fromPath, toPath); } }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); // delta should be removed and resources is not null if (delta.getKind() != REMOVED || resources == null) { return; } for (int i = 0; i < resources.length; i++) { final Resource resource = resources[i]; if (delta.getResource().getLocation().isPrefixOf(resource.getLocation())) { int size = resources.length; int numMoved = resources.length - i - 1; if (numMoved > 0) { System.arraycopy(resources, i + 1, resources, i, numMoved); } resources = copyOf(resources, --size); } } } }
protected Promise<ResourceDelta[]> synchronize(final ResourceDelta[] deltas) { Promise<Void> chain = promises.resolve(null); for (final ResourceDelta delta : deltas) { if (delta.getKind() == ADDED) { if (delta.getFlags() == (MOVED_FROM | MOVED_TO)) { chain = chain.thenPromise(ignored -> onExternalDeltaMoved(delta)); } else { chain = chain.thenPromise(ignored -> onExternalDeltaAdded(delta)); } } else if (delta.getKind() == REMOVED) { chain = chain.thenPromise(ignored -> onExternalDeltaRemoved(delta)); } else if (delta.getKind() == UPDATED) { chain = chain.thenPromise(ignored -> onExternalDeltaUpdated(delta)); } } return chain.thenPromise(ignored -> promises.resolve(deltas)); }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); final Resource resource = delta.getResource(); if (resource.isProject()) { // defer refreshing the projects section since appContext#getProjects may return old data Scheduler.get().scheduleDeferred(this::refreshProjects); } } }
private Promise<Void> onExternalDeltaMoved(final ResourceDelta delta) { Optional<Resource> toRemove = store.getResource(delta.getFromPath()); Path pathToDispose = Path.commonPath(delta.getFromPath(), delta.getToPath()); store.dispose(pathToDispose, true); return findResource(delta.getToPath()) .thenPromise( resource -> { if (resource.isPresent() && toRemove.isPresent()) { eventBus.fireEvent( new ResourceChangedEvent( new ResourceDeltaImpl( resource.get(), toRemove.get(), ADDED | MOVED_FROM | MOVED_TO | DERIVED))); } return promises.resolve(null); }); }
private void notifyProjectCreated(ResourceDelta delta) { String message = ProjectTreeChangeHandler.this.constants.projectCreated(delta.getToPath().segment(0)); ProjectTreeChangeHandler.this.notificationManager.notify(message, SUCCESS, FLOAT_MODE); } }
private Promise<Void> onExternalDeltaRemoved(final ResourceDelta delta) { final Optional<Resource> resourceOptional = store.getResource(delta.getFromPath()); if (resourceOptional.isPresent()) { final Resource resource = resourceOptional.get(); store.dispose(resource.getLocation(), true); eventBus.fireEvent( new ResourceChangedEvent(new ResourceDeltaImpl(resource, REMOVED | DERIVED))); } return promises.resolve(null); }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); if (delta.getKind() == UPDATED && delta.getResource().getLocation().equals(getData())) { eventBus.fireEvent(new SyntheticNodeUpdateEvent(LibrariesNode.this)); } }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); final Resource resource = delta.getResource(); if (!(resource.getResourceType() == PROJECT && resource.getLocation().segmentCount() == 1)) { return; } Scheduler.get() .scheduleDeferred( new Scheduler.ScheduledCommand() { @Override public void execute() { render(); } }); }
private Promise<Void> onExternalDeltaAdded(final ResourceDelta delta) { return findResource(delta.getToPath()) .thenPromise( resource -> { if (resource.isPresent()) { eventBus.fireEvent( new ResourceChangedEvent( new ResourceDeltaImpl(resource.get(), ADDED | DERIVED))); } return promises.resolve(null); }); }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); if (delta.getKind() == ADDED) { if (!delta.getResource().isFile() || (delta.getFlags() & (MOVED_FROM | MOVED_TO)) == 0) { return; } final Resource resource = delta.getResource(); final Path movedFrom = delta.getFromPath(); if (file.getLocation().equals(movedFrom)) { file = (VirtualFile) resource; title.setText(file.getDisplayName()); } } else if (delta.getKind() == UPDATED) { if (!delta.getResource().isFile()) { return; } final Resource resource = delta.getResource(); if (file.getLocation().equals(resource.getLocation())) { file = (VirtualFile) resource; title.setText(file.getDisplayName()); } } }
@Override public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); if (delta.getKind() != REMOVED) { return; } Path resourcePath = delta.getResource().getLocation(); for (EditorPartPresenter editorPart : closedParts) { Path editorPath = editorPart.getEditorInput().getFile().getLocation(); if (editorPath.equals(resourcePath)) { closedParts.remove(editorPart); return; } } }
/** Analyzes deleted item in project explorer tree and updates the panel if necessary. */ private void onItemDeleted(ResourceDelta delta) { Path pathToItem = delta.getResource().getLocation(); String projectName = pathToItem.segment(0); MutableAlteredFiles alteredFiles = changes.get(projectName); if (alteredFiles == null) { // project doesn't have a git repository return; } String itemRelativePath = pathToItem.removeFirstSegments(1).toString(); if (alteredFiles.getStatusByFilePath(itemRelativePath) != Status.ADDED) { alteredFiles.addFile(itemRelativePath, Status.DELETED); } else { alteredFiles.removeFile(itemRelativePath); } updateRepositoryChangesView(projectName, alteredFiles); }
private Promise<Void> onExternalDeltaUpdated(final ResourceDelta delta) { if (delta.getToPath().segmentCount() == 0) { workspaceRoot.synchronize(); return promises.resolve(null); } return findResource(delta.getToPath()) .thenPromise( resource -> { if (resource.isPresent()) { eventBus.fireEvent( new ResourceChangedEvent( new ResourceDeltaImpl(resource.get(), UPDATED | DERIVED))); } return promises.resolve(null); }); }
public void onResourceChanged(ResourceChangedEvent event) { ResourceDelta delta = event.getDelta(); Resource resource = delta.getResource(); if (resource.isProject() && resource.getLocation().segmentCount() == 1) { if (delta.getKind() == ResourceDelta.ADDED) { if ((delta.getFlags() & (MOVED_FROM | MOVED_TO)) != 0) { String oldProjectName = delta.getFromPath().segment(0); String newProjectName = delta.getToPath().segment(0); MutableAlteredFiles alteredFiles = new MutableAlteredFiles( view.addRepository(resource.getName()); } else if (delta.getKind() == ResourceDelta.REMOVED) { if (delta.getKind() == ResourceDelta.REMOVED) { onItemDeleted(delta);
@Override public void onResourceChanged(ResourceChangedEvent event) { ResourceDelta delta = event.getDelta(); Path resourceLocation = delta.getResource().getLocation(); if (REMOVED == delta.getKind() && project.equals(resourceLocation)) { EditorPartPresenter editorPart = editorAgent.getOpenedEditor(getLocation()); editorAgent.closeEditor(editorPart); removeHandlers(); } }
public void onResourceChanged(ResourceChangedEvent event) { final ResourceDelta delta = event.getDelta(); final Resource resource = delta.getResource(); if (delta.getKind() == ADDED) { if ((delta.getFlags() & (MOVED_FROM | MOVED_TO)) != 0) { if (rootProject.getLocation().equals(delta.getFromPath()) && resource.isProject()) { rootProjects.set(rootProjects.indexOf(rootProject), resource.asProject()); break; if (selectedResource.getLocation().equals(delta.getFromPath())) { selectedResources.set(selectedResources.indexOf(selectedResource), resource); break; } else if (delta.getKind() == REMOVED) { } else if (delta.getKind() == UPDATED) {
ResourceChangedEvent.getType(), event -> { if (ResourceDelta.REMOVED == event.getDelta().getKind() && event.getDelta().getResource().isProject()) { commands.clear(); fetchCommands();
final Tree tree = view.getTree(); final ResourceDelta delta = event.getDelta(); final Resource resource = delta.getResource(); final NodeSettings nodeSettings = settingsProvider.getSettings(); if (delta.getKind() == ADDED) { if ((delta.getFlags() & (MOVED_FROM | MOVED_TO)) != 0) { Node node = getNode(delta.getFromPath()); if (node != null) { boolean expanded = tree.isExpanded(node); if (node != null) { String oldId = tree.getNodeStorage().getKeyProvider().getKey(node); ((ResourceNode) node).setData(delta.getResource()); tree.getNodeStorage().reIndexNode(oldId, node); tree.refresh(node); } else if (delta.getKind() == REMOVED) { Node node = getNode(resource.getLocation()); } else if (delta.getKind() == UPDATED) { for (Node node : tree.getNodeStorage().getAll()) { if (node instanceof ResourceNode .getData() .getLocation() .equals(delta.getResource().getLocation())) { final String oldId = tree.getNodeStorage().getKeyProvider().getKey(node); ((ResourceNode) node).setData(delta.getResource());