public synchronized TypeNameMatch[] getFilteredTypeInfos(TypeInfoFilter filter) { Collection<TypeNameMatch> values= getValues(); List<TypeNameMatch> result= new ArrayList<>(); for (Iterator<TypeNameMatch> iter= values.iterator(); iter.hasNext();) { TypeNameMatch type= iter.next(); if ((filter == null || filter.matchesHistoryElement(type)) && !TypeFilter.isFiltered(type.getFullyQualifiedName())) result.add(type); } Collections.reverse(result); return result.toArray(new TypeNameMatch[result.size()]); }
public synchronized TypeNameMatch[] getFilteredTypeInfos(TypeInfoFilter filter) { Collection<TypeNameMatch> values= getValues(); List<TypeNameMatch> result= new ArrayList<>(); for (Iterator<TypeNameMatch> iter= values.iterator(); iter.hasNext();) { TypeNameMatch type= iter.next(); if ((filter == null || filter.matchesHistoryElement(type)) && !TypeFilter.isFiltered(type.getFullyQualifiedName())) result.add(type); } Collections.reverse(result); return result.toArray(new TypeNameMatch[result.size()]); }
public synchronized TypeNameMatch[] getFilteredTypeInfos(TypeInfoFilter filter) { Collection values= getValues(); List result= new ArrayList(); for (Iterator iter= values.iterator(); iter.hasNext();) { TypeNameMatch type= (TypeNameMatch)iter.next(); if ((filter == null || filter.matchesHistoryElement(type)) && !TypeFilter.isFiltered(type.getFullyQualifiedName())) result.add(type); } Collections.reverse(result); return (TypeNameMatch[])result.toArray(new TypeNameMatch[result.size()]); }
public synchronized TypeNameMatch[] getFilteredTypeInfos(TypeInfoFilter filter) { Collection values= getValues(); List result= new ArrayList(); for (Iterator iter= values.iterator(); iter.hasNext();) { TypeNameMatch type= (TypeNameMatch)iter.next(); if ((filter == null || filter.matchesHistoryElement(type)) && !TypeFilter.isFiltered(type.getFullyQualifiedName())) result.add(type); } Collections.reverse(result); return (TypeNameMatch[])result.toArray(new TypeNameMatch[result.size()]); }
public static boolean isFiltered(TypeNameMatch match) { return getDefault().filter(match.getFullyQualifiedName()); }
private boolean isFiltered(TypeNameMatch match) { boolean filteredByPattern= filter(match.getFullyQualifiedName()); if (filteredByPattern) return true; int accessibility= match.getAccessibility(); switch (accessibility) { case IAccessRule.K_NON_ACCESSIBLE: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_FORBIDDEN_REFERENCE_CHECK)); case IAccessRule.K_DISCOURAGED: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_DISCOURAGED_REFERENCE_CHECK)); default: return false; } }
@Override public void acceptTypeNameMatch(TypeNameMatch typeNameMatch) { final boolean isTopLevelType = typeNameMatch.getType().getDeclaringType() == null; if (isTopLevelType) { if (!pkgName.equals(typeNameMatch.getPackageName())) { // sanity check failed throw new IllegalStateException("Expected package '" + typeNameMatch.getPackageName() + "' to be equal to '" + pkgName + "'"); } QName qname = QName.valueOf(typeNameMatch.getFullyQualifiedName()); types.addName(FQN.fromImport(qname, true)); } } };
protected IStatus validateItem(Object item) { if (item == null) return new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, "", null); //$NON-NLS-1$ if (fValidator != null) { IType type= ((TypeNameMatch) item).getType(); if (!type.exists()) return new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, Messages.format(JavaUIMessages.FilteredTypesSelectionDialog_error_type_doesnot_exist, ((TypeNameMatch) item).getFullyQualifiedName()), null); Object[] elements= { type }; return fValidator.validate(elements); } else return new Status(IStatus.OK, JavaPlugin.getPluginId(), IStatus.OK, "", null); //$NON-NLS-1$ }
public static boolean isFiltered(TypeNameMatch match) { boolean filteredByPattern= getDefault().filter(match.getFullyQualifiedName()); if (filteredByPattern) return true; int accessibility= match.getAccessibility(); switch (accessibility) { case IAccessRule.K_NON_ACCESSIBLE: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_FORBIDDEN_REFERENCE_CHECK)); case IAccessRule.K_DISCOURAGED: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_DISCOURAGED_REFERENCE_CHECK)); default: return false; } }
public static boolean isFiltered(TypeNameMatch match) { boolean filteredByPattern= getDefault().filter(match.getFullyQualifiedName()); if (filteredByPattern) return true; int accessibility= match.getAccessibility(); switch (accessibility) { case IAccessRule.K_NON_ACCESSIBLE: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_FORBIDDEN_REFERENCE_CHECK)); case IAccessRule.K_DISCOURAGED: return JavaCore.ENABLED.equals(JavaCore.getOption(JavaCore.CODEASSIST_DISCOURAGED_REFERENCE_CHECK)); default: return false; } }
protected void handleWidgetSelected(TypeNameMatch[] selection) { IStatus status= null; if (selection.length == 0) { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, "",null); //$NON-NLS-1$ } else { if (fValidator != null) { List jElements= new ArrayList(); for (int i= 0; i < selection.length; i++) { IType type= selection[i].getType(); if (type != null) { jElements.add(type); } else { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, Messages.format(JavaUIMessages.TypeSelectionDialog_error_type_doesnot_exist, selection[i].getFullyQualifiedName()), null); break; } } if (status == null) { status= fValidator.validate(jElements.toArray()); } } else { status= new Status(IStatus.OK, JavaPlugin.getPluginId(), IStatus.OK, "",null); //$NON-NLS-1$ } } updateStatus(status); }
protected void handleWidgetSelected(TypeNameMatch[] selection) { IStatus status= null; if (selection.length == 0) { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, "",null); //$NON-NLS-1$ } else { if (fValidator != null) { List jElements= new ArrayList(); for (int i= 0; i < selection.length; i++) { IType type= selection[i].getType(); if (type != null) { jElements.add(type); } else { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, Messages.format(JavaUIMessages.TypeSelectionDialog_error_type_doesnot_exist, selection[i].getFullyQualifiedName()), null); break; } } if (status == null) { status= fValidator.validate(jElements.toArray()); } } else { status= new Status(IStatus.OK, JavaPlugin.getPluginId(), IStatus.OK, "",null); //$NON-NLS-1$ } } updateStatus(status); }
protected void handleWidgetSelected(TypeNameMatch[] selection) { IStatus status= null; if (selection.length == 0) { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, "",null); //$NON-NLS-1$ } else { if (fValidator != null) { List jElements= new ArrayList(); for (int i= 0; i < selection.length; i++) { IType type= selection[i].getType(); if (type != null) { jElements.add(type); } else { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, Messages.format(JavaUIMessages.TypeSelectionDialog_error_type_doesnot_exist, selection[i].getFullyQualifiedName()), null); break; } } if (status == null) { status= fValidator.validate(jElements.toArray()); } } else { status= new Status(IStatus.OK, JavaPlugin.getPluginId(), IStatus.OK, "",null); //$NON-NLS-1$ } } updateStatus(status); }
protected void handleWidgetSelected(TypeNameMatch[] selection) { IStatus status= null; if (selection.length == 0) { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, "",null); //$NON-NLS-1$ } else { if (fValidator != null) { List jElements= new ArrayList(); for (int i= 0; i < selection.length; i++) { IType type= selection[i].getType(); if (type != null) { jElements.add(type); } else { status= new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.ERROR, Messages.format(JavaUIMessages.TypeSelectionDialog_error_type_doesnot_exist, selection[i].getFullyQualifiedName()), null); break; } } if (status == null) { status= fValidator.validate(jElements.toArray()); } } else { status= new Status(IStatus.OK, JavaPlugin.getPluginId(), IStatus.OK, "",null); //$NON-NLS-1$ } } updateStatus(status); }
protected void setResult(List newResult) { List resultToReturn= new ArrayList(); for (int i= 0; i < newResult.size(); i++) { if (newResult.get(i) instanceof TypeNameMatch) { IType type= ((TypeNameMatch) newResult.get(i)).getType(); if (type.exists()) { // items are added to history in the // org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#computeResult() // method resultToReturn.add(type); } else { TypeNameMatch typeInfo= (TypeNameMatch) newResult.get(i); IPackageFragmentRoot root= typeInfo.getPackageFragmentRoot(); String containerName= JavaElementLabels.getElementLabel(root, JavaElementLabels.ROOT_QUALIFIED); String message= Messages.format(JavaUIMessages.FilteredTypesSelectionDialog_dialogMessage, new String[] { typeInfo.getFullyQualifiedName(), containerName }); MessageDialog.openError(getShell(), fTitle, message); getSelectionHistory().remove(typeInfo); } } } super.setResult(resultToReturn); }
private static String resolveType(String elementTypeName, RefactoringStatus status, IType declaringType, IProgressMonitor pm) throws CoreException { String[][] fqns= declaringType.resolveType(elementTypeName); if (fqns != null) { if (fqns.length == 1) { return JavaModelUtil.concatenateName(fqns[0][0], fqns[0][1]); } else if (fqns.length > 1){ String[] keys= {elementTypeName, String.valueOf(fqns.length)}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } } List typeRefsFound= findTypeInfos(elementTypeName, declaringType, pm); if (typeRefsFound.size() == 0){ String[] keys= {elementTypeName}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_not_unique, keys); status.addError(msg); return elementTypeName; } else if (typeRefsFound.size() == 1){ TypeNameMatch typeInfo= (TypeNameMatch) typeRefsFound.get(0); return typeInfo.getFullyQualifiedName(); } else { Assert.isTrue(typeRefsFound.size() > 1); String[] keys= {elementTypeName, String.valueOf(typeRefsFound.size())}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } }
private static String resolveType(String elementTypeName, RefactoringStatus status, IType declaringType, IProgressMonitor pm) throws CoreException { String[][] fqns= declaringType.resolveType(elementTypeName); if (fqns != null) { if (fqns.length == 1) { return JavaModelUtil.concatenateName(fqns[0][0], fqns[0][1]); } else if (fqns.length > 1){ String[] keys= { BasicElementLabels.getJavaElementName(elementTypeName), String.valueOf(fqns.length)}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } } List<TypeNameMatch> typeRefsFound= findTypeInfos(elementTypeName, declaringType, pm); if (typeRefsFound.size() == 0){ String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_not_unique, BasicElementLabels.getJavaElementName(elementTypeName)); status.addError(msg); return elementTypeName; } else if (typeRefsFound.size() == 1){ TypeNameMatch typeInfo= typeRefsFound.get(0); return typeInfo.getFullyQualifiedName(); } else { Assert.isTrue(typeRefsFound.size() > 1); String[] keys= {BasicElementLabels.getJavaElementName(elementTypeName), String.valueOf(typeRefsFound.size())}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } }
private static String resolveType(String elementTypeName, RefactoringStatus status, IType declaringType, IProgressMonitor pm) throws CoreException { String[][] fqns= declaringType.resolveType(elementTypeName); if (fqns != null) { if (fqns.length == 1) { return JavaModelUtil.concatenateName(fqns[0][0], fqns[0][1]); } else if (fqns.length > 1){ String[] keys= { BasicElementLabels.getJavaElementName(elementTypeName), String.valueOf(fqns.length)}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } } List<TypeNameMatch> typeRefsFound= findTypeInfos(elementTypeName, declaringType, pm); if (typeRefsFound.size() == 0){ String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_not_unique, BasicElementLabels.getJavaElementName(elementTypeName)); status.addError(msg); return elementTypeName; } else if (typeRefsFound.size() == 1){ TypeNameMatch typeInfo= typeRefsFound.get(0); return typeInfo.getFullyQualifiedName(); } else { Assert.isTrue(typeRefsFound.size() > 1); String[] keys= {BasicElementLabels.getJavaElementName(elementTypeName), String.valueOf(typeRefsFound.size())}; String msg= Messages.format(RefactoringCoreMessages.TypeContextChecker_ambiguous, keys); status.addError(msg); return elementTypeName; } }
private void addSelectedInterface() { TypeNameMatch[] selection= getSelectedTypes(); if (selection == null) return; for (int i= 0; i < selection.length; i++) { TypeNameMatch type= selection[i]; String qualifiedName= type.getFullyQualifiedName(); String message; if (fTypeWizardPage.addSuperInterface(qualifiedName)) { message= Messages.format(NewWizardMessages.SuperInterfaceSelectionDialog_interfaceadded_info, qualifiedName); } else { message= Messages.format(NewWizardMessages.SuperInterfaceSelectionDialog_interfacealreadyadded_info, qualifiedName); } updateStatus(new StatusInfo(IStatus.INFO, message)); } }
if (type == null) { String title= JavaUIMessages.TypeSelectionDialog_errorTitle; String message= Messages.format(JavaUIMessages.TypeSelectionDialog_dialogMessage, typeInfo.getFullyQualifiedName()); MessageDialog.openError(getShell(), title, message); history.remove(typeInfo);