mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-15 04:55:22 +02:00
[cleanup] Add missing Javadoc
This commit is contained in:
parent
ba53e9260f
commit
e26ac9dfb0
1 changed files with 125 additions and 117 deletions
|
@ -7,13 +7,13 @@
|
||||||
*
|
*
|
||||||
* Initial Contributors:
|
* Initial Contributors:
|
||||||
* The following IBM employees contributed to the Remote System Explorer
|
* The following IBM employees contributed to the Remote System Explorer
|
||||||
* component that contains this file: David McKnight, Kushal Munir,
|
* component that contains this file: David McKnight, Kushal Munir,
|
||||||
* Michael Berger, David Dykstal, Phil Coulthard, Don Yantzi, Eric Simpson,
|
* Michael Berger, David Dykstal, Phil Coulthard, Don Yantzi, Eric Simpson,
|
||||||
* Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley.
|
* Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley.
|
||||||
*
|
*
|
||||||
* Contributors:
|
* Contributors:
|
||||||
* Martin Oberhuber (Wind River) - [168975] Move RSE Events API to Core
|
* Martin Oberhuber (Wind River) - [168975] Move RSE Events API to Core
|
||||||
* Martin Oberhuber (Wind River) - [186128][refactoring] Move IProgressMonitor last in public base classes
|
* Martin Oberhuber (Wind River) - [186128][refactoring] Move IProgressMonitor last in public base classes
|
||||||
* Rupen Mardirossian (IBM) - [187713] Check to see if target is null before attempting to retrieve targetAdapter in tranferRSEResources method (line 248)
|
* Rupen Mardirossian (IBM) - [187713] Check to see if target is null before attempting to retrieve targetAdapter in tranferRSEResources method (line 248)
|
||||||
* Martin Oberhuber (Wind River) - [200682] Fix drag&drop for elements just adaptable to IResource, like CDT elements
|
* Martin Oberhuber (Wind River) - [200682] Fix drag&drop for elements just adaptable to IResource, like CDT elements
|
||||||
* David McKnight (IBM) - [186363] get rid of obsolete calls to SubSystem.connect()
|
* David McKnight (IBM) - [186363] get rid of obsolete calls to SubSystem.connect()
|
||||||
|
@ -81,7 +81,7 @@ import org.eclipse.ui.progress.UIJob;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runnable to perform actual transfer operation.
|
* Runnable to perform actual transfer operation.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class SystemDNDTransferRunnable extends WorkspaceJob
|
public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
{
|
{
|
||||||
|
@ -96,8 +96,8 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
private List _resultSrcObjects;
|
private List _resultSrcObjects;
|
||||||
private List _resultTgtObjects;
|
private List _resultTgtObjects;
|
||||||
private List _setList;
|
private List _setList;
|
||||||
|
|
||||||
|
|
||||||
private Object _currentTarget;
|
private Object _currentTarget;
|
||||||
private int _sourceType;
|
private int _sourceType;
|
||||||
private Viewer _originatingViewer;
|
private Viewer _originatingViewer;
|
||||||
|
@ -117,7 +117,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
this.setUser(true);
|
this.setUser(true);
|
||||||
_shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
|
_shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected SystemRemoteResourceSet getSetFor(ISubSystem subSystem, ISystemDragDropAdapter adapter)
|
protected SystemRemoteResourceSet getSetFor(ISubSystem subSystem, ISystemDragDropAdapter adapter)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < _setList.size(); i++)
|
for (int i = 0; i < _setList.size(); i++)
|
||||||
|
@ -128,23 +128,31 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
return set;
|
return set;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// no existing set - create one
|
// no existing set - create one
|
||||||
SystemRemoteResourceSet newSet = new SystemRemoteResourceSet(subSystem, adapter);
|
SystemRemoteResourceSet newSet = new SystemRemoteResourceSet(subSystem, adapter);
|
||||||
_setList.add(newSet);
|
_setList.add(newSet);
|
||||||
return newSet;
|
return newSet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transfer RSE resources.
|
||||||
|
*
|
||||||
|
* @param target actual target object (parent item) to drop into
|
||||||
|
* @param targetSubSystem subsystem of target object
|
||||||
|
* @param targetAdapter RSE ISystemDragDropAdapter of target object
|
||||||
|
* @param monitor progress monitor for cancellation
|
||||||
|
* @return <code>true</code> if successfully transferred, or
|
||||||
|
* <code>false</code> if cancelled.
|
||||||
|
*/
|
||||||
protected boolean transferRSEResources(Object target, ISubSystem targetSubSystem, ISystemDragDropAdapter targetAdapter, IProgressMonitor monitor)
|
protected boolean transferRSEResources(Object target, ISubSystem targetSubSystem, ISystemDragDropAdapter targetAdapter, IProgressMonitor monitor)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
// transfer local artificts and categorize remote objects
|
// transfer local artificts and categorize remote objects
|
||||||
for (int i = 0; i < _srcObjects.size() && _ok; i++)
|
for (int i = 0; i < _srcObjects.size() && _ok; i++)
|
||||||
{
|
{
|
||||||
Object srcObject = _srcObjects.get(i);
|
Object srcObject = _srcObjects.get(i);
|
||||||
_resultSrcObjects.add(srcObject);
|
_resultSrcObjects.add(srcObject);
|
||||||
|
|
||||||
if (srcObject instanceof SystemMessage)
|
if (srcObject instanceof SystemMessage)
|
||||||
{
|
{
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
|
@ -164,56 +172,56 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
{
|
{
|
||||||
targetAdapter.doDrop(tempObject, target, false, false, _sourceType, monitor);
|
targetAdapter.doDrop(tempObject, target, false, false, _sourceType, monitor);
|
||||||
_resultTgtObjects.add(tempObject);
|
_resultTgtObjects.add(tempObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ISubSystem srcSubSystem = srcAdapter.getSubSystem(srcObject);
|
ISubSystem srcSubSystem = srcAdapter.getSubSystem(srcObject);
|
||||||
if (srcSubSystem.isConnected() ||
|
if (srcSubSystem.isConnected() ||
|
||||||
srcObject instanceof ISystemFilterReference ||
|
srcObject instanceof ISystemFilterReference ||
|
||||||
srcObject instanceof ISubSystem)
|
srcObject instanceof ISubSystem)
|
||||||
{
|
{
|
||||||
SystemRemoteResourceSet set = getSetFor(srcSubSystem, srcAdapter);
|
SystemRemoteResourceSet set = getSetFor(srcSubSystem, srcAdapter);
|
||||||
set.addResource(srcObject);
|
set.addResource(srcObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String targetPath = targetAdapter.getAbsoluteName(target);
|
String targetPath = targetAdapter.getAbsoluteName(target);
|
||||||
boolean sameSubSystemType = true;
|
boolean sameSubSystemType = true;
|
||||||
String targetType = ""; //$NON-NLS-1$
|
String targetType = ""; //$NON-NLS-1$
|
||||||
if (targetSubSystem != null)
|
if (targetSubSystem != null)
|
||||||
{
|
{
|
||||||
targetType = targetSubSystem.getName();
|
targetType = targetSubSystem.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
// now we have things divided into sets
|
// now we have things divided into sets
|
||||||
// transfer 1 set at a time
|
// transfer 1 set at a time
|
||||||
for (int s = 0; s < _setList.size(); s++)
|
for (int s = 0; s < _setList.size(); s++)
|
||||||
{
|
{
|
||||||
SystemRemoteResourceSet set = (SystemRemoteResourceSet)_setList.get(s);
|
SystemRemoteResourceSet set = (SystemRemoteResourceSet)_setList.get(s);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ISubSystem srcSubSystem = set.getSubSystem();
|
ISubSystem srcSubSystem = set.getSubSystem();
|
||||||
ISystemDragDropAdapter srcAdapter = set.getAdapter();
|
ISystemDragDropAdapter srcAdapter = set.getAdapter();
|
||||||
|
|
||||||
String srcType = srcSubSystem.getName();
|
String srcType = srcSubSystem.getName();
|
||||||
sameSubSystemType = targetType.equals(srcType);
|
sameSubSystemType = targetType.equals(srcType);
|
||||||
|
|
||||||
if (!sameSubSystemType && targetSubSystem != null)
|
if (!sameSubSystemType && targetSubSystem != null)
|
||||||
{
|
{
|
||||||
ISystemResourceSet tempObjects = srcAdapter.doDrag(set, monitor);
|
ISystemResourceSet tempObjects = srcAdapter.doDrag(set, monitor);
|
||||||
if (monitor.isCanceled()) {
|
if (monitor.isCanceled()) {
|
||||||
monitor.done();
|
monitor.done();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (tempObjects == null)
|
if (tempObjects == null)
|
||||||
{
|
{
|
||||||
// drag failed
|
// drag failed
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
showInvalidTransferMessage(set, targetPath);
|
showInvalidTransferMessage(set, targetPath);
|
||||||
}
|
}
|
||||||
|
@ -225,19 +233,19 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (targetAdapter.validateDrop(tempObjects, target, (targetSubSystem == srcSubSystem)))
|
if (targetAdapter.validateDrop(tempObjects, target, (targetSubSystem == srcSubSystem)))
|
||||||
{
|
{
|
||||||
// special case for filters
|
// special case for filters
|
||||||
if (target instanceof ISystemFilterReference)
|
if (target instanceof ISystemFilterReference)
|
||||||
{
|
{
|
||||||
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
||||||
if (factory.supportsDropInFilters())
|
if (factory.supportsDropInFilters())
|
||||||
{
|
{
|
||||||
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
||||||
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ISystemResourceSet droppedObjects = targetAdapter.doDrop(tempObjects, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
ISystemResourceSet droppedObjects = targetAdapter.doDrop(tempObjects, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
||||||
if (droppedObjects == null)
|
if (droppedObjects == null)
|
||||||
{
|
{
|
||||||
|
@ -257,7 +265,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
showErrorMessage(droppedObjects.getMessage());
|
showErrorMessage(droppedObjects.getMessage());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
List results = droppedObjects.getResourceSet();
|
List results = droppedObjects.getResourceSet();
|
||||||
for (int d = 0; d < results.size(); d++)
|
for (int d = 0; d < results.size(); d++)
|
||||||
|
@ -273,15 +281,15 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
showInvalidTransferMessage(set, targetPath);
|
showInvalidTransferMessage(set, targetPath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// special case for filters
|
// special case for filters
|
||||||
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
||||||
{
|
{
|
||||||
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
||||||
if (factory.supportsDropInFilters())
|
if (factory.supportsDropInFilters())
|
||||||
{
|
{
|
||||||
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
||||||
if (target == null)
|
if (target == null)
|
||||||
{
|
{
|
||||||
|
@ -295,7 +303,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
if (targetAdapter.validateDrop(set, target, (targetSubSystem == srcSubSystem)))
|
if (targetAdapter.validateDrop(set, target, (targetSubSystem == srcSubSystem)))
|
||||||
{
|
{
|
||||||
|
|
||||||
ISystemResourceSet droppedObjects = targetAdapter.doDrop(set, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
ISystemResourceSet droppedObjects = targetAdapter.doDrop(set, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
||||||
if (droppedObjects == null)
|
if (droppedObjects == null)
|
||||||
{
|
{
|
||||||
|
@ -306,14 +314,14 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
showErrorMessage(droppedObjects.getMessage());
|
showErrorMessage(droppedObjects.getMessage());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
List results = droppedObjects.getResourceSet();
|
List results = droppedObjects.getResourceSet();
|
||||||
for (int d = 0; d < results.size(); d++)
|
for (int d = 0; d < results.size(); d++)
|
||||||
{
|
{
|
||||||
_resultTgtObjects.add(results.get(d));
|
_resultTgtObjects.add(results.get(d));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -323,14 +331,14 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return _ok;
|
return _ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected boolean transferRSEResourcesToEclipseResource(IResource target, ISubSystem targetSubSystem, IProgressMonitor monitor)
|
protected boolean transferRSEResourcesToEclipseResource(IResource target, ISubSystem targetSubSystem, IProgressMonitor monitor)
|
||||||
{
|
{
|
||||||
boolean alwaysOverwrite = false;
|
boolean alwaysOverwrite = false;
|
||||||
|
|
||||||
List resourcesToCopy = new ArrayList();
|
List resourcesToCopy = new ArrayList();
|
||||||
IWorkspaceRoot root = target.getWorkspace().getRoot();
|
IWorkspaceRoot root = target.getWorkspace().getRoot();
|
||||||
for (int i = 0; i < _srcObjects.size() && _ok; i++)
|
for (int i = 0; i < _srcObjects.size() && _ok; i++)
|
||||||
|
@ -354,24 +362,24 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
boolean canCopy = true;
|
boolean canCopy = true;
|
||||||
IResource res = (IResource)tempFile;
|
IResource res = (IResource)tempFile;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
IPath destPath = target.getFullPath();
|
IPath destPath = target.getFullPath();
|
||||||
destPath = destPath.append(res.getName());
|
destPath = destPath.append(res.getName());
|
||||||
|
|
||||||
IResource newResource = root.findMember(destPath);
|
IResource newResource = root.findMember(destPath);
|
||||||
|
|
||||||
// check for existing files
|
// check for existing files
|
||||||
if (!alwaysOverwrite){
|
if (!alwaysOverwrite){
|
||||||
if (newResource != null && newResource.exists()){
|
if (newResource != null && newResource.exists()){
|
||||||
int result = checkOverwrite(res, newResource);
|
int result = checkOverwrite(res, newResource);
|
||||||
if (result != IDialogConstants.YES_ID && result != IDialogConstants.YES_TO_ALL_ID){
|
if (result != IDialogConstants.YES_ID && result != IDialogConstants.YES_TO_ALL_ID){
|
||||||
canCopy = false;
|
canCopy = false;
|
||||||
if (result == IDialogConstants.CANCEL_ID){
|
if (result == IDialogConstants.CANCEL_ID){
|
||||||
// cancel the whole operation
|
// cancel the whole operation
|
||||||
monitor.setCanceled(true);
|
monitor.setCanceled(true);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
_resultSrcObjects.remove(srcObject);
|
_resultSrcObjects.remove(srcObject);
|
||||||
}
|
}
|
||||||
else if (result == IDialogConstants.YES_TO_ALL_ID){
|
else if (result == IDialogConstants.YES_TO_ALL_ID){
|
||||||
|
@ -379,7 +387,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// add to the list of files to copy
|
// add to the list of files to copy
|
||||||
if (canCopy){
|
if (canCopy){
|
||||||
resourcesToCopy.add(res);
|
resourcesToCopy.add(res);
|
||||||
|
@ -393,15 +401,15 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// now doing the actual copy
|
// now doing the actual copy
|
||||||
if (!resourcesToCopy.isEmpty()) {
|
if (!resourcesToCopy.isEmpty()) {
|
||||||
IResource[] resources = (IResource[])resourcesToCopy.toArray(new IResource[resourcesToCopy.size()]);
|
IResource[] resources = (IResource[])resourcesToCopy.toArray(new IResource[resourcesToCopy.size()]);
|
||||||
IPath destinationPath = target.getFullPath();
|
IPath destinationPath = target.getFullPath();
|
||||||
CopyResourcesOperation op = new CopyResourcesOperation(resources, destinationPath,
|
CopyResourcesOperation op = new CopyResourcesOperation(resources, destinationPath,
|
||||||
SystemResources.RESID_COPY_TITLE);
|
SystemResources.RESID_COPY_TITLE);
|
||||||
|
|
||||||
|
|
||||||
IAdaptable adaptable = WorkspaceUndoUtil.getUIInfoAdapter(_shell);
|
IAdaptable adaptable = WorkspaceUndoUtil.getUIInfoAdapter(_shell);
|
||||||
try {
|
try {
|
||||||
PlatformUI.getWorkbench().getOperationSupport()
|
PlatformUI.getWorkbench().getOperationSupport()
|
||||||
|
@ -409,13 +417,13 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
} catch (ExecutionException e) {
|
} catch (ExecutionException e) {
|
||||||
SystemMessage errorMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_EXCEPTION_OCCURRED);
|
SystemMessage errorMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_EXCEPTION_OCCURRED);
|
||||||
if (e.getCause() instanceof CoreException) {
|
if (e.getCause() instanceof CoreException) {
|
||||||
SystemBasePlugin.logError(e.getMessage(), e);
|
SystemBasePlugin.logError(e.getMessage(), e);
|
||||||
errorMessage.makeSubstitution(e.getCause().getMessage());
|
errorMessage.makeSubstitution(e.getCause().getMessage());
|
||||||
} else {
|
} else {
|
||||||
SystemBasePlugin.logError(e.getMessage(), e);
|
SystemBasePlugin.logError(e.getMessage(), e);
|
||||||
errorMessage.makeSubstitution(e.getMessage());
|
errorMessage.makeSubstitution(e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
showErrorMessage(errorMessage);
|
showErrorMessage(errorMessage);
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
return false;
|
return false;
|
||||||
|
@ -431,21 +439,21 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
|
|
||||||
Runnable query = new Runnable() {
|
Runnable query = new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
int resultId[] = {
|
int resultId[] = {
|
||||||
IDialogConstants.YES_ID,
|
IDialogConstants.YES_ID,
|
||||||
IDialogConstants.YES_TO_ALL_ID,
|
IDialogConstants.YES_TO_ALL_ID,
|
||||||
IDialogConstants.NO_ID,
|
IDialogConstants.NO_ID,
|
||||||
IDialogConstants.CANCEL_ID };
|
IDialogConstants.CANCEL_ID };
|
||||||
|
|
||||||
String labels[] = new String[] {
|
String labels[] = new String[] {
|
||||||
IDialogConstants.YES_LABEL,
|
IDialogConstants.YES_LABEL,
|
||||||
IDialogConstants.YES_TO_ALL_LABEL,
|
IDialogConstants.YES_TO_ALL_LABEL,
|
||||||
IDialogConstants.NO_LABEL,
|
IDialogConstants.NO_LABEL,
|
||||||
IDialogConstants.CANCEL_LABEL };
|
IDialogConstants.CANCEL_LABEL };
|
||||||
|
|
||||||
String title = SystemResources.RESID_COLLISION_DUPLICATE_RESOURCE_TITLE;
|
String title = SystemResources.RESID_COLLISION_DUPLICATE_RESOURCE_TITLE;
|
||||||
String msg = NLS.bind(SystemResources.RESID_COLLISION_OVERWRITE_RESOURCE_MESSAGE, destination.getFullPath().makeRelative());
|
String msg = NLS.bind(SystemResources.RESID_COLLISION_OVERWRITE_RESOURCE_MESSAGE, destination.getFullPath().makeRelative());
|
||||||
|
|
||||||
MessageDialog dialog = new MessageDialog(
|
MessageDialog dialog = new MessageDialog(
|
||||||
PlatformUI.getWorkbench().getDisplay().getActiveShell(),
|
PlatformUI.getWorkbench().getDisplay().getActiveShell(),
|
||||||
title,
|
title,
|
||||||
|
@ -459,11 +467,11 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PlatformUI.getWorkbench().getDisplay().syncExec(query);
|
PlatformUI.getWorkbench().getDisplay().syncExec(query);
|
||||||
return result[0];
|
return result[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
protected boolean transferNonRSEResources(Object target, ISubSystem targetSubSystem, ISystemDragDropAdapter targetAdapter, IProgressMonitor monitor)
|
protected boolean transferNonRSEResources(Object target, ISubSystem targetSubSystem, ISystemDragDropAdapter targetAdapter, IProgressMonitor monitor)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -480,23 +488,23 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
else if (srcObject != null)
|
else if (srcObject != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
// special case for filters
|
// special case for filters
|
||||||
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
||||||
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
||||||
{
|
{
|
||||||
((ISystemFilterReference)target).markStale(true);
|
((ISystemFilterReference)target).markStale(true);
|
||||||
|
|
||||||
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
||||||
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_sourceType == SRC_TYPE_ECLIPSE_RESOURCE)
|
if (_sourceType == SRC_TYPE_ECLIPSE_RESOURCE)
|
||||||
{
|
{
|
||||||
// Eclipse resource transfer
|
// Eclipse resource transfer
|
||||||
|
@ -513,7 +521,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
if (droppedObject == null)
|
if (droppedObject == null)
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
else
|
else
|
||||||
_resultTgtObjects.add(droppedObject);
|
_resultTgtObjects.add(droppedObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (_sourceType == SRC_TYPE_OS_RESOURCE)
|
else if (_sourceType == SRC_TYPE_OS_RESOURCE)
|
||||||
|
@ -555,13 +563,13 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
{
|
{
|
||||||
targetAdapter.doDrop(tempObject, target, false, false, _sourceType, monitor);
|
targetAdapter.doDrop(tempObject, target, false, false, _sourceType, monitor);
|
||||||
_resultTgtObjects.add(tempObject);
|
_resultTgtObjects.add(tempObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ISubSystem srcSubSystem = srcAdapter.getSubSystem(srcObject);
|
ISubSystem srcSubSystem = srcAdapter.getSubSystem(srcObject);
|
||||||
|
|
||||||
if (srcSubSystem.isConnected() ||
|
if (srcSubSystem.isConnected() ||
|
||||||
srcObject instanceof ISystemFilterReference ||
|
srcObject instanceof ISystemFilterReference ||
|
||||||
srcObject instanceof ISubSystem)
|
srcObject instanceof ISubSystem)
|
||||||
{
|
{
|
||||||
|
@ -571,7 +579,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
boolean sameSubSystemType = true;
|
boolean sameSubSystemType = true;
|
||||||
if (targetSubSystem != null)
|
if (targetSubSystem != null)
|
||||||
{
|
{
|
||||||
String targetType = targetSubSystem.getName();
|
String targetType = targetSubSystem.getName();
|
||||||
sameSubSystemType = targetType.equals(srcType);
|
sameSubSystemType = targetType.equals(srcType);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -580,7 +588,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
Object tempObject = srcAdapter.doDrag(srcObject, sameSubSystemType, monitor);
|
Object tempObject = srcAdapter.doDrag(srcObject, sameSubSystemType, monitor);
|
||||||
if (tempObject == null)
|
if (tempObject == null)
|
||||||
{
|
{
|
||||||
// drag failed
|
// drag failed
|
||||||
operationFailed(monitor);
|
operationFailed(monitor);
|
||||||
showInvalidTransferMessage(srcPath, targetPath);
|
showInvalidTransferMessage(srcPath, targetPath);
|
||||||
}
|
}
|
||||||
|
@ -599,13 +607,13 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
{
|
{
|
||||||
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
||||||
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
||||||
{
|
{
|
||||||
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
||||||
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Object droppedObject = targetAdapter.doDrop(tempObject, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
Object droppedObject = targetAdapter.doDrop(tempObject, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
||||||
if (droppedObject == null)
|
if (droppedObject == null)
|
||||||
{
|
{
|
||||||
|
@ -628,22 +636,22 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (srcObject != target && !srcPath.equals(targetPath))
|
else if (srcObject != target && !srcPath.equals(targetPath))
|
||||||
{
|
{
|
||||||
// special case for filters
|
// special case for filters
|
||||||
|
|
||||||
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
if (target instanceof ISystemFilterReference && targetSubSystem != null)
|
||||||
{
|
{
|
||||||
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
ISubSystemConfiguration factory = targetSubSystem.getSubSystemConfiguration();
|
||||||
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
if (factory.supportsDropInFilters() && factory.providesCustomDropInFilters())
|
||||||
{
|
{
|
||||||
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
target = targetSubSystem.getTargetForFilter((ISystemFilterReference)target);
|
||||||
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (targetAdapter.validateDrop(srcObject, target, (targetSubSystem == srcSubSystem)))
|
if (targetAdapter.validateDrop(srcObject, target, (targetSubSystem == srcSubSystem)))
|
||||||
{
|
{
|
||||||
|
|
||||||
Object droppedObject = targetAdapter.doDrop(srcObject, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
Object droppedObject = targetAdapter.doDrop(srcObject, target, sameSubSystemType, (targetSubSystem == srcSubSystem), _sourceType, monitor);
|
||||||
if (droppedObject == null)
|
if (droppedObject == null)
|
||||||
{
|
{
|
||||||
|
@ -695,8 +703,8 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
Object target = _currentTarget;
|
Object target = _currentTarget;
|
||||||
ISubSystem targetSubSystem = null;
|
ISubSystem targetSubSystem = null;
|
||||||
//boolean expandFolder = false;
|
//boolean expandFolder = false;
|
||||||
|
|
||||||
|
|
||||||
if (target instanceof IAdaptable)
|
if (target instanceof IAdaptable)
|
||||||
{
|
{
|
||||||
ISystemDragDropAdapter targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
ISystemDragDropAdapter targetAdapter = (ISystemDragDropAdapter) ((IAdaptable) target).getAdapter(ISystemDragDropAdapter.class);
|
||||||
|
@ -704,7 +712,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
// checking for IResource since we already handle them specially
|
// checking for IResource since we already handle them specially
|
||||||
if (targetAdapter != null && !(target instanceof IResource))
|
if (targetAdapter != null && !(target instanceof IResource))
|
||||||
{
|
{
|
||||||
targetSubSystem = targetAdapter.getSubSystem(target);
|
targetSubSystem = targetAdapter.getSubSystem(target);
|
||||||
|
|
||||||
if (targetSubSystem != null && !targetSubSystem.isConnected())
|
if (targetSubSystem != null && !targetSubSystem.isConnected())
|
||||||
{
|
{
|
||||||
|
@ -720,11 +728,11 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
SystemMessage copyMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_COPYGENERIC_PROGRESS);
|
SystemMessage copyMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_COPYGENERIC_PROGRESS);
|
||||||
if (monitor != null)
|
if (monitor != null)
|
||||||
monitor.beginTask(copyMessage.getLevelOneText(), IProgressMonitor.UNKNOWN);
|
monitor.beginTask(copyMessage.getLevelOneText(), IProgressMonitor.UNKNOWN);
|
||||||
|
|
||||||
if (_sourceType == SRC_TYPE_RSE_RESOURCE)
|
if (_sourceType == SRC_TYPE_RSE_RESOURCE)
|
||||||
{
|
{
|
||||||
transferRSEResources(target, targetSubSystem, targetAdapter, monitor);
|
transferRSEResources(target, targetSubSystem, targetAdapter, monitor);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
transferNonRSEResources(target, targetSubSystem, targetAdapter, monitor);
|
transferNonRSEResources(target, targetSubSystem, targetAdapter, monitor);
|
||||||
|
@ -742,17 +750,17 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
monitor.done();
|
monitor.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (target != null && target instanceof ISystemContainer)
|
if (target != null && target instanceof ISystemContainer)
|
||||||
{
|
{
|
||||||
((ISystemContainer)target).markStale(true);
|
((ISystemContainer)target).markStale(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
RefreshJob refresh = new RefreshJob(target, targetSubSystem);
|
RefreshJob refresh = new RefreshJob(target, targetSubSystem);
|
||||||
refresh.schedule();
|
refresh.schedule();
|
||||||
return Status.OK_STATUS;
|
return Status.OK_STATUS;
|
||||||
}
|
}
|
||||||
|
|
||||||
public class RefreshJob extends UIJob
|
public class RefreshJob extends UIJob
|
||||||
{
|
{
|
||||||
private Object _target;
|
private Object _target;
|
||||||
|
@ -763,7 +771,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
_target = target;
|
_target = target;
|
||||||
_targetSubSystem = targetSubSystem;
|
_targetSubSystem = targetSubSystem;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IStatus runInUIThread(IProgressMonitor monitor)
|
public IStatus runInUIThread(IProgressMonitor monitor)
|
||||||
{
|
{
|
||||||
String[] oldNames = new String[_resultSrcObjects.size()];
|
String[] oldNames = new String[_resultSrcObjects.size()];
|
||||||
|
@ -771,7 +779,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
if (_resultTgtObjects.size() > 0)
|
if (_resultTgtObjects.size() > 0)
|
||||||
{
|
{
|
||||||
boolean doRefresh = _ok;
|
boolean doRefresh = _ok;
|
||||||
|
|
||||||
for (int t = 0; t < _resultTgtObjects.size() && t < _resultSrcObjects.size(); t++)
|
for (int t = 0; t < _resultTgtObjects.size() && t < _resultSrcObjects.size(); t++)
|
||||||
{
|
{
|
||||||
Object tgt = _resultTgtObjects.get(t);
|
Object tgt = _resultTgtObjects.get(t);
|
||||||
|
@ -785,13 +793,13 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
doRefresh = true;
|
doRefresh = true;
|
||||||
}
|
}
|
||||||
ISystemDragDropAdapter adapter = null;
|
ISystemDragDropAdapter adapter = null;
|
||||||
if (src instanceof IAdaptable) {
|
if (src instanceof IAdaptable) {
|
||||||
adapter = (ISystemDragDropAdapter)((IAdaptable)src).getAdapter(ISystemDragDropAdapter.class);
|
adapter = (ISystemDragDropAdapter)((IAdaptable)src).getAdapter(ISystemDragDropAdapter.class);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
adapter = (ISystemDragDropAdapter)Platform.getAdapterManager().getAdapter(src, ISystemDragDropAdapter.class);
|
adapter = (ISystemDragDropAdapter)Platform.getAdapterManager().getAdapter(src, ISystemDragDropAdapter.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (adapter != null){
|
if (adapter != null){
|
||||||
oldNames[t] = adapter.getAbsoluteName(src);
|
oldNames[t] = adapter.getAbsoluteName(src);
|
||||||
}
|
}
|
||||||
|
@ -805,23 +813,23 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
oldNames[t] = ""; // source resource unknown //$NON-NLS-1$
|
oldNames[t] = ""; // source resource unknown //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_originatingViewer instanceof TreeViewer)
|
if (_originatingViewer instanceof TreeViewer)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
TreeViewer viewer = (TreeViewer) _originatingViewer;
|
TreeViewer viewer = (TreeViewer) _originatingViewer;
|
||||||
|
|
||||||
if (!(_target instanceof IHost)){ // not sure when we'd want to expand a host
|
if (!(_target instanceof IHost)){ // not sure when we'd want to expand a host
|
||||||
viewer.setExpandedState(_target, true);
|
viewer.setExpandedState(_target, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (doRefresh)
|
if (doRefresh)
|
||||||
{
|
{
|
||||||
String operation = ISystemRemoteChangeEvents.SYSTEM_REMOTE_OPERATION_COPY;
|
String operation = ISystemRemoteChangeEvents.SYSTEM_REMOTE_OPERATION_COPY;
|
||||||
|
@ -839,7 +847,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
|
|
||||||
private void operationFailed(IProgressMonitor monitor)
|
private void operationFailed(IProgressMonitor monitor)
|
||||||
{
|
{
|
||||||
|
|
||||||
_ok = false;
|
_ok = false;
|
||||||
if (monitor != null)
|
if (monitor != null)
|
||||||
monitor.done();
|
monitor.done();
|
||||||
|
@ -851,7 +859,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
errorMessage.makeSubstitution(srcPath, targetPath);
|
errorMessage.makeSubstitution(srcPath, targetPath);
|
||||||
showErrorMessage(errorMessage);
|
showErrorMessage(errorMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showInvalidTransferMessage(ISystemResourceSet resourceSet, String targetPath)
|
private void showInvalidTransferMessage(ISystemResourceSet resourceSet, String targetPath)
|
||||||
{
|
{
|
||||||
SystemMessage errorMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_TRANSFER_INVALID);
|
SystemMessage errorMessage = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_TRANSFER_INVALID);
|
||||||
|
@ -871,16 +879,16 @@ public class SystemDNDTransferRunnable extends WorkspaceJob
|
||||||
{
|
{
|
||||||
_errorMessage = errorMessage;
|
_errorMessage = errorMessage;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void run()
|
public void run()
|
||||||
{
|
{
|
||||||
Shell shell = SystemBasePlugin.getActiveWorkbenchShell();
|
Shell shell = SystemBasePlugin.getActiveWorkbenchShell();
|
||||||
SystemMessageDialog dlg = new SystemMessageDialog(shell, _errorMessage);
|
SystemMessageDialog dlg = new SystemMessageDialog(shell, _errorMessage);
|
||||||
dlg.open();
|
dlg.open();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean dropOkay()
|
public boolean dropOkay()
|
||||||
{
|
{
|
||||||
return _ok;
|
return _ok;
|
||||||
|
|
Loading…
Add table
Reference in a new issue