public static final void invoke(Runnable r) { Mutex.EVENT.postReadRequest(r); }
@Override public void postReadRequest(Runnable run) { owner.MUTEX.postReadRequest(run); }
@Override public void propertyChange(PropertyChangeEvent evt) { String prop = evt.getPropertyName(); if (prop != null && !propertyNames.contains(evt.getPropertyName())) { // Not interesting to us. return; } // Coalesce changes; can come in fast after huge CP changes (#47910): if (!dirty.getAndSet(true)) { ProjectManager.mutex().postReadRequest(this); } }
private void runDeferred(final Runnable r) { ProjectManager.mutex().postReadRequest(new Runnable() { @Override public void run() { ProjectManager.mutex().postWriteRequest(r); } }); }
public boolean canUpdate () { if (TRANSPARENT_UPDATE) { return true; } //Ask just once under a single write access if (alreadyAskedInWriteAccess) { return false; } else { boolean canUpdate = showUpdateDialog(); if (!canUpdate) { alreadyAskedInWriteAccess = true; ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { alreadyAskedInWriteAccess = false; } }); } return canUpdate; } }
public boolean canUpdate() { //Ask just once under a single write access if (alreadyAskedInWriteAccess) { return false; } else { boolean canUpdate = showUpdateDialog(); if (!canUpdate) { alreadyAskedInWriteAccess = true; ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { alreadyAskedInWriteAccess = false; } }); } return canUpdate; } }
public boolean canUpdate() { if (TRANSPARENT_UPDATE) { return true; } //Ask just once under a single write access if (alreadyAskedInWriteAccess) { return false; } else { boolean canUpdate = showUpdateDialog(); if (!canUpdate) { alreadyAskedInWriteAccess = true; ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { alreadyAskedInWriteAccess = false; } }); } return canUpdate; } }
public boolean canUpdate () { if (TRANSPARENT_UPDATE) { return true; } //Ask just once under a single write access if (alreadyAskedInWriteAccess) { return false; } else { boolean canUpdate = showUpdateDialog(); if (!canUpdate) { alreadyAskedInWriteAccess = true; ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { alreadyAskedInWriteAccess = false; } }); } return canUpdate; } }
private boolean canUpdate () { if (TRANSPARENT_UPDATE) { return true; } //Ask just once under a single write access if (alreadyAskedInWriteAccess) { return false; } else { boolean canUpdate = this.notifier.canUpdate(); if (!canUpdate) { alreadyAskedInWriteAccess = true; ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { alreadyAskedInWriteAccess = false; } }); } return canUpdate; } }
public void valueChanged(TreeSelectionEvent ev) { TreePath[] paths = tree.getSelectionPaths (); storeSelectedPaths = Arrays.asList (paths == null ? new TreePath[0] : paths); if (paths == null) { // part of bugfix #37279, if DnD is active then is useless select a nearby node if (ExplorerDnDManager.getDefault().isDnDActive()) { return ; } callSelectionChanged (new Node[0]); } else { // we need to force no changes to nodes hierarchy => // we are requesting read request, but it is not necessary // to execute the next action immediatelly, so postReadRequest // should be enough readAccessPaths = paths; Children.MUTEX.postReadRequest(this); } }
public void valueChanged(TreeSelectionEvent ev) { TreePath[] paths = tree.getSelectionPaths (); storeSelectedPaths = Arrays.asList (paths == null ? new TreePath[0] : paths); if (paths == null) { // part of bugfix #37279, if DnD is active then is useless select a nearby node if (ExplorerDnDManager.getDefault().isDnDActive()) { return ; } callSelectionChanged (new Node[0]); } else { // we need to force no changes to nodes hierarchy => // we are requesting read request, but it is not necessary // to execute the next action immediatelly, so postReadRequest // should be enough readAccessPaths = paths; Children.MUTEX.postReadRequest(this); } }
@Override public void valueChanged(TreeSelectionEvent ev) { TreePath[] paths = tree.getSelectionPaths(); if (paths == null) { // part of bugfix #37279, if DnD is active then is useless select a nearby node if (ExplorerDnDManager.getDefault().isDnDActive()) { return; } callSelectionChanged(new Node[0]); } else { // we need to force no changes to nodes hierarchy => // we are requesting read request, but it is not necessary // to execute the next action immediatelly, so postReadRequest // should be enough readAccessPaths = paths; Children.MUTEX.postReadRequest(this); } }
ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { try{ } else { ProjectManager.mutex().postReadRequest(new Runnable() { public void run() { try {