(IResource[]) resourcesToBeDeleted.toArray(new IResource[resourcesToBeAdded.size()]),
(IResource[]) resourcesToBeDeleted.toArray(new IResource[resourcesToBeDeleted.size()]),
	public void execute(IAction action) throws InvocationTargetException, InterruptedException {		final IResource[] resources = getSelectedResources();	    final List resourcesToBeAdded = new ArrayList();	    final List resourcesToBeDeleted = new ArrayList();		run(new IRunnableWithProgress() {			public void run(IProgressMonitor monitor) throws InvocationTargetException {				try {				    // search for modified or added, non-ignored resources in the selection.				    IResource[] modified = getModifiedResources(resources, monitor);									    // if no changes since last commit, do not show commit dialog.				    if (modified.length == 0) {					    MessageDialog.openInformation(getShell(), Policy.bind("CommitDialog.title"), Policy.bind("CommitDialog.noChanges")); //$NON-NLS-1$ //$NON-NLS-2$					    commit = false;					} else {					    ProjectProperties projectProperties = ProjectProperties.getProjectProperties(modified[0]);					    commit = confirmCommit(modified, projectProperties);					}				    // if commit was not canceled, create a list of any				    // unversioned resources that were selected and a list of any missing				    // resources that were selected.					if (commit) {					    for (int i = 0; i < resourcesToCommit.length; i++) {					        IResource resource = resourcesToCommit[i];					        ISVNLocalResource svnResource = SVNWorkspaceRoot.getSVNResourceFor(resource);					        if (!svnResource.isManaged()) resourcesToBeAdded.add(resource);					        if (svnResource.getStatus().isMissing()) resourcesToBeDeleted.add(resource);					    }					}				} catch (TeamException e) {					throw new InvocationTargetException(e);				}			}		}, true /* cancelable */, PROGRESS_BUSYCURSOR); //$NON-NLS-1$				if (!commit) {			return; // user canceled		}				new CommitOperation(getTargetPart(), resources, 				(IResource[]) resourcesToBeAdded.toArray(new IResource[resourcesToBeAdded.size()]),				(IResource[]) resourcesToBeDeleted.toArray(new IResource[resourcesToBeAdded.size()]),				resourcesToCommit, commitComment, keepLocks).run();	}