private static boolean isCorrespondingTypeBinding(ITypeBinding binding, IType type) { if (binding == null) return false; return Bindings.getFullyQualifiedName(binding).equals(JavaElementUtil.createSignature(type)); }
private static boolean isCorrespondingTypeBinding(ITypeBinding binding, IType type) { if (binding == null) return false; return Bindings.getFullyQualifiedName(binding).equals(JavaElementUtil.createSignature(type)); }
private static boolean isCorrespondingTypeBinding(ITypeBinding binding, IType type) { if (binding == null) return false; return Bindings.getFullyQualifiedName(binding).equals(JavaElementUtil.createSignature(type)); }
@Override public final ASTNode getTargetNode() { final MethodRefParameter parameter= ast.newMethodRefParameter(); final IMethodBinding method= declaration.resolveBinding(); if (method != null) { final ITypeBinding declaring= method.getDeclaringClass(); if (declaring != null) parameter.setType(ASTNodeFactory.newType(ast, Bindings.getFullyQualifiedName(declaring))); } return parameter; } });
public final ASTNode getTargetNode() { final MethodRefParameter parameter= ast.newMethodRefParameter(); final IMethodBinding method= declaration.resolveBinding(); if (method != null) { final ITypeBinding declaring= method.getDeclaringClass(); if (declaring != null) parameter.setType(ASTNodeFactory.newType(ast, Bindings.getFullyQualifiedName(declaring))); } return parameter; } });
@Override public final ASTNode getTargetNode() { final MethodRefParameter parameter= ast.newMethodRefParameter(); final IMethodBinding method= declaration.resolveBinding(); if (method != null) { final ITypeBinding declaring= method.getDeclaringClass(); if (declaring != null) parameter.setType(ASTNodeFactory.newType(ast, Bindings.getFullyQualifiedName(declaring))); } return parameter; } });
private Javadoc createJavadocForStub(final String enclosingTypeName, final MethodDeclaration oldMethod, final MethodDeclaration newMethodNode, final ICompilationUnit cu, final ASTRewrite rewrite) throws CoreException { if (fSettings.createComments) { final IMethodBinding binding= oldMethod.resolveBinding(); if (binding != null) { final ITypeBinding[] params= binding.getParameterTypes(); final String fullTypeName= JavaModelUtil.getFullyQualifiedName(getDestinationType()); final String[] fullParamNames= new String[params.length]; for (int i= 0; i < fullParamNames.length; i++) { fullParamNames[i]= Bindings.getFullyQualifiedName(params[i]); } final String comment= CodeGeneration.getMethodComment(cu, enclosingTypeName, newMethodNode, false, binding.getName(), fullTypeName, fullParamNames, StubUtility.getLineDelimiterUsed(cu)); return (Javadoc) rewrite.createStringPlaceholder(comment, ASTNode.JAVADOC); } } return null; }
private Javadoc createJavadocForStub(final String enclosingTypeName, final MethodDeclaration oldMethod, final MethodDeclaration newMethodNode, final ICompilationUnit cu, final ASTRewrite rewrite) throws CoreException { if (fSettings.createComments) { final IMethodBinding binding= oldMethod.resolveBinding(); if (binding != null) { final ITypeBinding[] params= binding.getParameterTypes(); final String fullTypeName= getDestinationType().getFullyQualifiedName('.'); final String[] fullParamNames= new String[params.length]; for (int i= 0; i < fullParamNames.length; i++) { fullParamNames[i]= Bindings.getFullyQualifiedName(params[i]); } final String comment= CodeGeneration.getMethodComment(cu, enclosingTypeName, newMethodNode, false, binding.getName(), fullTypeName, fullParamNames, StubUtility.getLineDelimiterUsed(cu)); if (comment != null) return (Javadoc) rewrite.createStringPlaceholder(comment, ASTNode.JAVADOC); } } return null; }
private Javadoc createJavadocForStub(final String enclosingTypeName, final MethodDeclaration oldMethod, final MethodDeclaration newMethodNode, final ICompilationUnit cu, final ASTRewrite rewrite) throws CoreException { if (fSettings.createComments) { final IMethodBinding binding= oldMethod.resolveBinding(); if (binding != null) { final ITypeBinding[] params= binding.getParameterTypes(); final String fullTypeName= getDestinationType().getFullyQualifiedName('.'); final String[] fullParamNames= new String[params.length]; for (int i= 0; i < fullParamNames.length; i++) { fullParamNames[i]= Bindings.getFullyQualifiedName(params[i]); } final String comment= CodeGeneration.getMethodComment(cu, enclosingTypeName, newMethodNode, false, binding.getName(), fullTypeName, fullParamNames, StubUtility.getLineDelimiterUsed(cu)); if (comment != null) return (Javadoc) rewrite.createStringPlaceholder(comment, ASTNode.JAVADOC); } } return null; }
return Signature.toString(candidate).equals(Bindings.getFullyQualifiedName(type)); } else { String[][] qualifiedCandidates= scope.resolveType(Signature.toString(candidate));
return Signature.toString(candidate).equals(Bindings.getFullyQualifiedName(type)); } else { String[][] qualifiedCandidates= scope.resolveType(Signature.toString(candidate));
else { if (binding.isVarargs() && bindings[offset].isArray() && offset == names.length - 1) names[offset]= Bindings.getFullyQualifiedName(bindings[offset].getElementType()); else names[offset]= Bindings.getFullyQualifiedName(bindings[offset]);
return Signature.toString(candidate).equals(Bindings.getFullyQualifiedName(type)); } else { String[][] qualifiedCandidates= scope.resolveType(Signature.toString(candidate));
else { if (binding.isVarargs() && bindings[offset].isArray() && offset == names.length - 1) names[offset]= Bindings.getFullyQualifiedName(bindings[offset].getElementType()); else names[offset]= Bindings.getFullyQualifiedName(bindings[offset]);
else { if (binding.isVarargs() && bindings[offset].isArray() && offset == names.length - 1) names[offset]= Bindings.getFullyQualifiedName(bindings[offset].getElementType()); else names[offset]= Bindings.getFullyQualifiedName(bindings[offset]);
private void addMethodStubForAbstractMethod(final IMethod sourceMethod, final CompilationUnit declaringCuNode, final AbstractTypeDeclaration typeToCreateStubIn, final ICompilationUnit newCu, final CompilationUnitRewrite rewriter, final Map<IMember, IncomingMemberVisibilityAdjustment> adjustments, final IProgressMonitor monitor, final RefactoringStatus status) throws CoreException { final MethodDeclaration methodToCreateStubFor= ASTNodeSearchUtil.getMethodDeclarationNode(sourceMethod, declaringCuNode); final AST ast= rewriter.getRoot().getAST(); final MethodDeclaration newMethod= ast.newMethodDeclaration(); ASTRewrite astRewrite= rewriter.getASTRewrite(); newMethod.setBody(createMethodStub(methodToCreateStubFor, ast, newCu, astRewrite, Bindings.getFullyQualifiedName(typeToCreateStubIn.resolveBinding()))); newMethod.setConstructor(false); copyExtraDimensions(methodToCreateStubFor, newMethod); int modifiers= getModifiersWithUpdatedVisibility(sourceMethod, JdtFlags.clearFlag(Modifier.NATIVE | Modifier.ABSTRACT, methodToCreateStubFor.getModifiers()), adjustments, new SubProgressMonitor(monitor, 1), false, status); if (getDestinationType().isInterface()) { modifiers= modifiers | Modifier.PUBLIC; } newMethod.modifiers().addAll(ASTNodeFactory.newModifiers(ast, modifiers)); newMethod.setName(((SimpleName) ASTNode.copySubtree(ast, methodToCreateStubFor.getName()))); final TypeVariableMaplet[] mapping= TypeVariableUtil.composeMappings(TypeVariableUtil.subTypeToSuperType(getDeclaringType(), getDestinationType()), TypeVariableUtil.superTypeToInheritedType(getDestinationType(), ((IType) typeToCreateStubIn.resolveBinding().getJavaElement()))); copyReturnType(astRewrite, getDeclaringType().getCompilationUnit(), methodToCreateStubFor, newMethod, mapping); copyParameters(astRewrite, getDeclaringType().getCompilationUnit(), methodToCreateStubFor, newMethod, mapping); copyThrownExceptions(methodToCreateStubFor, newMethod); newMethod.setJavadoc(createJavadocForStub(typeToCreateStubIn.getName().getIdentifier(), methodToCreateStubFor, newMethod, newCu, astRewrite)); ImportRewrite importRewrite= rewriter.getImportRewrite(); ImportRewriteContext context= new ContextSensitiveImportRewriteContext(typeToCreateStubIn, importRewrite); ImportRewriteUtil.addImports(rewriter, context, methodToCreateStubFor, new HashMap<Name, String>(), new HashMap<Name, String>(), true); IJavaProject javaProject= newCu.getJavaProject(); CodeGenerationSettings codeGenerationSettings= JavaPreferencesSettings.getCodeGenerationSettings(javaProject); StubUtility2Core.addOverrideAnnotation(codeGenerationSettings, javaProject, astRewrite, importRewrite, newMethod, getDeclaringType().isInterface(), rewriter.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_override_annotation, SET_PULL_UP)); astRewrite.getListRewrite(typeToCreateStubIn, typeToCreateStubIn.getBodyDeclarationsProperty()).insertAt(newMethod, BodyDeclarationRewrite.getInsertionIndex(newMethod, typeToCreateStubIn.bodyDeclarations()), rewriter.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_method_stub, SET_PULL_UP)); }