Bug 17910 OpenRefactoringWIzardAction: is API but has protected method that us internal classes
F1 Opt to remove the class and use an internal helper class instead.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenRefactoringWizardAction.java
package org.eclipse.jdt.ui.actions;
import java.util.Iterator;
import org.eclipse.swt.widgets.Display;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.text.ITextSelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.ui.IWorkbenchSite;
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jdt.internal.corext.refactoring.Assert;
import org.eclipse.jdt.internal.corext.refactoring.base.Refactoring;
import org.eclipse.jdt.internal.ui.JavaPlugin;
import org.eclipse.jdt.internal.ui.actions.SelectionConverter;
import org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringMessages;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringWizard;
import org.eclipse.jdt.internal.ui.refactoring.actions.RefactoringStarter;
import org.eclipse.jdt.internal.ui.util.ExceptionHandler;
public abstract class OpenRefactoringWizardAction extends SelectionDispatchAction {
	private Class fActivationType;
	private Refactoring fRefactoring;
	private CompilationUnitEditor fEditor;
	private boolean fCanActivateOnMultiSelection;
	private String fUnavailableMessage;
	
	protected OpenRefactoringWizardAction(String label, String unavailableString, IWorkbenchSite site, Class activatedOnType, boolean canActivateOnMultiSelection) {