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
if (selection.size() > 1 && ! fCanActivateOnMultiSelection)	
			return false;
		
		if (selection.size() == 1 && ! fCanActivateOnMultiSelection)
			return fActivationType.isInstance(selection.getFirstElement()) && shouldAcceptElement(selection.getFirstElement());
				
		for  (Iterator iter= selection.iterator(); iter.hasNext(); ) {
			if (!fActivationType.isInstance(iter.next()))
				return false;
		}
		return shouldAcceptElement(selection.toArray());
	}
		
	private boolean canRun(ITextSelection selection){
		IJavaElement[] elements= resolveElements();
		if (elements.length != 1)
			return false;
		if (fCanActivateOnMultiSelection)
			return fActivationType.isInstance(elements[0]) && shouldAcceptElement(elements);	
		else	
			return fActivationType.isInstance(elements[0]) && shouldAcceptElement(elements[0]);
	}
	/**
	 * @param obj is guaranteed to be of the accepted type (passed in the constructor)
	 * However, if <code>canOperateOnMultiSelection</code> resturns <code>true</code>, 
	 * then obj is <code>Object[]</code> and contains elements of the accepted type (passed in the constructor) 
	 * @see OpenWizardAction#shouldAcceptElement
	 */
	private final boolean shouldAcceptElement(Object obj) {
		try{