Example usage for org.aspectj.asm IProgramElement getMessage

List of usage examples for org.aspectj.asm IProgramElement getMessage

Introduction

In this page you can find the example usage for org.aspectj.asm IProgramElement getMessage.

Prototype

public IMessage getMessage();

Source Link

Usage

From source file:org.eclipse.ajdt.internal.utils.AJDTUtils.java

License:Open Source License

/**
 * Decorate icon based on modifiers, errors etc. Possible decorations are:
 * abstract, final, synchronized, static, runnable, warning, error,
 * overrides, implements//  w  ww.  j a va2 s.  c o  m
 */
public static ImageDescriptor decorate(ImageDescriptor base, IProgramElement pNode) {
    int flags = 0;
    if (pNode != null) {
        List<Modifiers> modifiers = pNode.getModifiers();
        if (modifiers != null) {
            if (modifiers.contains(IProgramElement.Modifiers.ABSTRACT)) {
                flags = flags | JavaElementImageDescriptor.ABSTRACT;
            }
            if (modifiers.contains(IProgramElement.Modifiers.FINAL)) {
                flags = flags | JavaElementImageDescriptor.FINAL;
            }
            if (modifiers.contains(IProgramElement.Modifiers.SYNCHRONIZED)) {
                flags = flags | JavaElementImageDescriptor.SYNCHRONIZED;
            }
            if (modifiers.contains(IProgramElement.Modifiers.STATIC)) {
                flags = flags | JavaElementImageDescriptor.STATIC;
            }
        }
        if (pNode.getKind() == IProgramElement.Kind.CONSTRUCTOR
                || pNode.getKind() == IProgramElement.Kind.INTER_TYPE_CONSTRUCTOR) {
            flags = flags | JavaElementImageDescriptor.CONSTRUCTOR;
        }
        if (pNode.isRunnable()) {
            flags = flags | JavaElementImageDescriptor.RUNNABLE;
        }
        if (pNode.isOverrider()) {
            flags = flags | JavaElementImageDescriptor.OVERRIDES;
        }
        if (pNode.isImplementor()) {
            flags = flags | JavaElementImageDescriptor.IMPLEMENTS;
        }
        IMessage sMessage = pNode.getMessage();
        if (sMessage != null) {
            if (sMessage.getKind() == IMessage.ERROR) {
                flags = flags | JavaElementImageDescriptor.ERROR;
            } else if (sMessage.getKind() == IMessage.WARNING) {
                flags = flags | JavaElementImageDescriptor.WARNING;
            }
        }
    }
    return decorate(base, flags);
}