Example usage for org.aspectj.org.eclipse.jdt.core.dom AroundAdviceDeclaration aroundTYPE_PARAMETERS_PROPERTY

List of usage examples for org.aspectj.org.eclipse.jdt.core.dom AroundAdviceDeclaration aroundTYPE_PARAMETERS_PROPERTY

Introduction

In this page you can find the example usage for org.aspectj.org.eclipse.jdt.core.dom AroundAdviceDeclaration aroundTYPE_PARAMETERS_PROPERTY.

Prototype

ChildListPropertyDescriptor aroundTYPE_PARAMETERS_PROPERTY

To view the source code for org.aspectj.org.eclipse.jdt.core.dom AroundAdviceDeclaration aroundTYPE_PARAMETERS_PROPERTY.

Click Source Link

Usage

From source file:org.eclipse.ajdt.core.dom.rewrite.AjASTRewriteAnalyzer.java

License:Open Source License

public boolean visit(AroundAdviceDeclaration node) {
    // ajh02: method added
    if (!hasChildrenChanges(node)) {
        return doVisitUnchangedChildren(node);
    }//w  ww . java2  s.co  m
    int pos = rewriteJavadoc(node, AroundAdviceDeclaration.aroundJAVADOC_PROPERTY);
    if (node.getAST().apiLevel() == JLS2_INTERNAL) {
        pos = rewriteOptionalTypeParameters(node, AroundAdviceDeclaration.aroundTYPE_PARAMETERS_PROPERTY, pos,
                " ", true, pos != node.getStartPosition()); //$NON-NLS-1$
    }

    rewriteReturnType(node);

    // parameters
    try {
        if (isChanged(node, AroundAdviceDeclaration.aroundPARAMETERS_PROPERTY)) {
            pos = getScanner().getTokenEndOffset(ITerminalSymbols.TokenNameLPAREN, pos);
            pos = rewriteNodeList(node, AroundAdviceDeclaration.aroundPARAMETERS_PROPERTY, pos, "", ", "); //$NON-NLS-1$ //$NON-NLS-2$
        } else {
            pos = doVisit(node, AroundAdviceDeclaration.aroundPARAMETERS_PROPERTY, pos);
        }

        pos = getScanner().getTokenEndOffset(ITerminalSymbols.TokenNameRPAREN, pos);

        pos = rewriteNodeList(node, AroundAdviceDeclaration.aroundTHROWN_EXCEPTIONS_PROPERTY, pos, " throws ", //$NON-NLS-1$
                ", "); //$NON-NLS-1$
        rewriteAdviceBody(node, pos);
    } catch (CoreException e) {
        // ignore
    }
    return false;
}