Example usage for org.eclipse.jdt.core ICompilationUnit findWorkingCopy

List of usage examples for org.eclipse.jdt.core ICompilationUnit findWorkingCopy

Introduction

In this page you can find the example usage for org.eclipse.jdt.core ICompilationUnit findWorkingCopy.

Prototype

ICompilationUnit findWorkingCopy(WorkingCopyOwner owner);

Source Link

Document

Finds the working copy for this compilation unit, given a WorkingCopyOwner .

Usage

From source file:edu.illinois.compositerefactorings.refactorings.copymembertosubtype.CopyMemberToSubtypeRefactoringProcessor.java

License:Open Source License

/**
 * {@link org.eclipse.jdt.internal.corext.refactoring.structure.PushDownRefactoringProcessor#checkFinalConditions(IProgressMonitor, CheckConditionsContext)}
 *//* www  .  j  av  a  2s. co  m*/
@Override
public RefactoringStatus checkFinalConditions(IProgressMonitor monitor, CheckConditionsContext context)
        throws CoreException, OperationCanceledException {
    try {
        monitor.beginTask(RefactoringCoreMessages.PushDownRefactoring_checking, 5);
        clearCaches();
        ICompilationUnit unit = getDeclaringType().getCompilationUnit();
        if (fLayer) {
            unit = unit.findWorkingCopy(fOwner);
        }
        resetWorkingCopies(unit);
        final RefactoringStatus result = new RefactoringStatus();
        result.merge(checkMembersInDestinationClasses(new SubProgressMonitor(monitor, 1)));
        monitor.worked(1);
        if (result.hasFatalError())
            return result;
        List<IMember> members = new ArrayList<IMember>(fMemberInfos.length);
        for (int index = 0; index < fMemberInfos.length; index++) {
            if (fMemberInfos[index].getAction() != MemberActionInfo.NO_ACTION)
                members.add(fMemberInfos[index].getMember());
        }
        fMembersToMove = members.toArray(new IMember[members.size()]);
        fChangeManager = createChangeManager(new SubProgressMonitor(monitor, 1), result);
        if (result.hasFatalError())
            return result;

        Checks.addModifiedFilesToChecker(ResourceUtil.getFiles(fChangeManager.getAllCompilationUnits()),
                context);

        return result;
    } finally {
        monitor.done();
    }
}