| /******************************************************************************* |
| * Copyright (c) 2007, 2015 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.pde.api.tools.internal.provisional.comparator; |
| |
| import org.eclipse.pde.api.tools.internal.provisional.model.IApiComponent; |
| |
| /** |
| * Interface that represents a delta. This interface is not intended to be |
| * implemented or extended by the client. |
| */ |
| public interface IDelta { |
| /** |
| * Status constant indicating that the element has been added. |
| */ |
| public int ADDED = 1; |
| /** |
| * Status constant indicating that the element has been changed, as |
| * described by the change flags. |
| * |
| * @see #getFlags() |
| */ |
| public int CHANGED = 2; |
| |
| /** |
| * Status constant indicating that the element has been removed. |
| */ |
| public int REMOVED = 3; |
| |
| /** |
| * Element type constant indicating that the delta is reported against an |
| * annotation type declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int ANNOTATION_ELEMENT_TYPE = 1; |
| |
| /** |
| * Element type constant indicating that the delta is reported against an |
| * API component. |
| * |
| * @see #getElementType() |
| */ |
| public static final int API_COMPONENT_ELEMENT_TYPE = 2; |
| |
| /** |
| * Element type constant indicating that the delta is reported against an |
| * API baseline. |
| * |
| * @see #getElementType() |
| */ |
| public static final int API_BASELINE_ELEMENT_TYPE = 3; |
| |
| /** |
| * Element type constant indicating that the delta is reported against a |
| * class type declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int CLASS_ELEMENT_TYPE = 4; |
| |
| /** |
| * Element type constant indicating that the delta is reported against a |
| * constructor declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int CONSTRUCTOR_ELEMENT_TYPE = 5; |
| |
| /** |
| * Element type constant indicating that the delta is reported against an |
| * enum type declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int ENUM_ELEMENT_TYPE = 6; |
| |
| /** |
| * Element type constant indicating that the delta is reported against a |
| * field declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int FIELD_ELEMENT_TYPE = 7; |
| |
| /** |
| * Element type constant indicating that the delta is reported against an |
| * interface type declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int INTERFACE_ELEMENT_TYPE = 8; |
| |
| /** |
| * Element type constant indicating that the delta is reported against a |
| * method declaration. |
| * |
| * @see #getElementType() |
| */ |
| public static final int METHOD_ELEMENT_TYPE = 9; |
| /** |
| * Element type constant indicating that the delta is reported against a |
| * type parameter. |
| * |
| * @see #getElementType() |
| */ |
| public static final int TYPE_PARAMETER_ELEMENT_TYPE = 10; |
| |
| /** |
| * Delta kind flag that denotes removing the abstract keyword from a member. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int ABSTRACT_TO_NON_ABSTRACT = 1; |
| /** |
| * Delta kind flag that denotes the default value of an annotation. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int ANNOTATION_DEFAULT_VALUE = 2; |
| /** |
| * Delta kind flag that denotes an {@link IApiComponent}. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_COMPONENT = 3; |
| /** |
| * Delta kind flag that denotes changing an array of objects to a Java 1.5 |
| * varargs. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int ARRAY_TO_VARARGS = 4; |
| /** |
| * Delta kind flag that denotes a checked exception. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int CHECKED_EXCEPTION = 5; |
| /** |
| * Delta kind flag that denotes a Java 1.5 generics class bound. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int CLASS_BOUND = 6; |
| /** |
| * Delta kind flag that denotes a static initializer. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int CLINIT = 7; |
| /** |
| * Delta kind flag that denotes a constructor. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int CONSTRUCTOR = 8; |
| /** |
| * Delta kind flag that denotes an interface in the super-interface set has |
| * been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int CONTRACTED_SUPERINTERFACES_SET = 10; |
| /** |
| * Delta kind flag that denotes decreasing the access of a member. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int DECREASE_ACCESS = 11; |
| /** |
| * Delta kind flag that denotes a constant value enum. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int ENUM_CONSTANT = 12; |
| /** |
| * Delta kind flag that denotes and execution environment. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int EXECUTION_ENVIRONMENT = 13; |
| /** |
| * Delta kind flag that denotes an interface has been added to the current |
| * set of super-interfaces. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int EXPANDED_SUPERINTERFACES_SET = 15; |
| /** |
| * Delta kind flag that denotes a field has been added or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FIELD = 16; |
| /** |
| * Delta kind flag that denotes a field has been moved up the current |
| * super-class hierarchy. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FIELD_MOVED_UP = 17; |
| /** |
| * Delta kind flag that denotes the final keyword has been removed from a |
| * member. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FINAL_TO_NON_FINAL = 18; |
| /** |
| * Delta kind flag that denotes that the final keyword has been removed from |
| * a static member. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FINAL_TO_NON_FINAL_NON_STATIC = 19; |
| /** |
| * Delta kind flag that denotes the final keyword has been removed from a |
| * constant field. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FINAL_TO_NON_FINAL_STATIC_CONSTANT = 20; |
| /** |
| * Delta kind flag that denotes the final keyword has been removed from a |
| * non-constant field. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int FINAL_TO_NON_FINAL_STATIC_NON_CONSTANT = 21; |
| /** |
| * Delta kind flag that denotes the access to a member has been increased. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int INCREASE_ACCESS = 22; |
| /** |
| * Delta kind flag that denotes a Java 1.5 interface bound has been changed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int INTERFACE_BOUND = 23; |
| /** |
| * Delta kind flag that denotes a method has been added or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int METHOD = 25; |
| /** |
| * Delta kind flag that denotes a method has moved up the super-class |
| * hierarchy. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int METHOD_MOVED_UP = 26; |
| /** |
| * Delta kind flag that denotes a method with a default value has been added |
| * or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int METHOD_WITH_DEFAULT_VALUE = 27; |
| /** |
| * Delta kind flag that denotes a method without a default value has been |
| * added or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int METHOD_WITHOUT_DEFAULT_VALUE = 28; |
| /** |
| * Delta kind flag that denotes the native keyword has been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NATIVE_TO_NON_NATIVE = 29; |
| /** |
| * Delta kind flag that denotes the abstract keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_ABSTRACT_TO_ABSTRACT = 30; |
| /** |
| * Delta kind flag that denotes the final keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_FINAL_TO_FINAL = 31; |
| /** |
| * Delta kind flag that denotes the native keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_NATIVE_TO_NATIVE = 32; |
| /** |
| * Delta kind flag that denotes the static keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_STATIC_TO_STATIC = 33; |
| /** |
| * Delta kind flag that denotes the synchronized keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_SYNCHRONIZED_TO_SYNCHRONIZED = 34; |
| /** |
| * Delta kind flag that denotes the transient keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_TRANSIENT_TO_TRANSIENT = 35; |
| /** |
| * Delta kind flag that denotes a method addition that is overriding a |
| * method from a superclass <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int OVERRIDEN_METHOD = 36; |
| /** |
| * Delta kind flag that denotes API restrictions on a member have been |
| * added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int RESTRICTIONS = 37; |
| /** |
| * Delta kind flag that denotes the static keyword has been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int STATIC_TO_NON_STATIC = 38; |
| /** |
| * Delta kind flag that denotes a super-class has been added, or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int SUPERCLASS = 39; |
| /** |
| * Delta kind flag that denotes the synchronized keyword has been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int SYNCHRONIZED_TO_NON_SYNCHRONIZED = 40; |
| /** |
| * Delta kind flag that denotes a type has been converted to a different |
| * kind. For example, from a class to an annotation. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_CONVERSION = 41; |
| /** |
| * Delta kind flag that denotes the transient keyword has been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TRANSIENT_TO_NON_TRANSIENT = 45; |
| /** |
| * Delta kind flag that denotes a type has changed in some way. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE = 46; |
| /** |
| * Delta kind flag that denotes type arguments have been added or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_ARGUMENTS = 47; |
| /** |
| * Delta kind flag that denotes a type member has been added or removed from |
| * a type. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_MEMBER = 48; |
| /** |
| * Delta kind flag that denotes a type parameter has been added or removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_PARAMETER = 49; |
| /** |
| * Delta kind flag that a type parameter name has changed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_PARAMETER_NAME = 50; |
| /** |
| * Delta kind flag that denotes type parameters have been added to a type |
| * that didn't have type parameters before. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_PARAMETERS = 51; |
| /** |
| * Delta kind flag that denotes the visibility of a type has changed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_VISIBILITY = 52; |
| /** |
| * Delta kind flag that denotes an unchecked exception has been added or |
| * removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int UNCHECKED_EXCEPTION = 53; |
| /** |
| * Delta kind flag that denotes the value of a member has changed in some |
| * way. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int VALUE = 54; |
| /** |
| * Delta kind flag that denotes changing a Java 1.5 varargs to an array of |
| * {@link Object}s. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int VARARGS_TO_ARRAY = 55; |
| /** |
| * Delta kind flag that denotes changing the visibility of a type from |
| * VisibilityModifiers.API to another visibility. As a consequence, the |
| * corresponding type is no longer an API type. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_TYPE = 56; |
| /** |
| * Delta kind flag that denotes the volatile keyword has been added. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int NON_VOLATILE_TO_VOLATILE = 57; |
| /** |
| * Delta kind flag that denotes the volatile keyword has been removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int VOLATILE_TO_NON_VOLATILE = 58; |
| /** |
| * Delta kind flag that denotes changing the major version of a bundle. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int MAJOR_VERSION = 59; |
| /** |
| * Delta kind flag that denotes changing the minor version of a bundle. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #CHANGED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int MINOR_VERSION = 60; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * field. As a consequence, the corresponding field is no longer an API |
| * field. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_FIELD = 61; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * method. As a consequence, the corresponding method is no longer an API |
| * method. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_METHOD = 62; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * constructor. As a consequence, the corresponding constructor is no longer |
| * an API constructor. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_CONSTRUCTOR = 63; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * enum constant. As a consequence, the corresponding enum constant is no |
| * longer an API enum constant. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_ENUM_CONSTANT = 64; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * enum constant. As a consequence, the corresponding enum constant is no |
| * longer an API enum constant. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_METHOD_WITH_DEFAULT_VALUE = 65; |
| /** |
| * Delta kind flag that denotes adding @noreference restrictions to an API |
| * enum constant. As a consequence, the corresponding enum constant is no |
| * longer an API enum constant. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int API_METHOD_WITHOUT_DEFAULT_VALUE = 66; |
| /** |
| * Delta kind flag that denotes a method has moved down in the type |
| * hierarchy. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int METHOD_MOVED_DOWN = 67; |
| /** |
| * Delta kind flag that denotes that a type argument has been added or |
| * removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #CHANGED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int TYPE_ARGUMENT = 68; |
| /** |
| * Delta kind flag that denotes that an interface got a super interface with |
| * methods. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int SUPER_INTERFACE_WITH_METHODS = 69; |
| /** |
| * Delta kind flag that denotes a re-exported type has been added or |
| * removed. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int REEXPORTED_TYPE = 70; |
| /** |
| * Delta kind flag that denotes changing the visibility of a re-exported |
| * type from VisibilityModifiers.API to another visibility. As a |
| * consequence, the corresponding re-exported type is no longer an API type. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int REEXPORTED_API_TYPE = 71; |
| /** |
| * Delta kind flag that denotes adding or removing the deprecated modifiers |
| * on the corresponding element. <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int DEPRECATION = 72; |
| |
| /** |
| * Delta kind flag that denotes a default method has been added or removed. |
| * <br> |
| * Applies to kinds: |
| * <ul> |
| * <li>{@link #ADDED}</li> |
| * <li>{@link #REMOVED}</li> |
| * </ul> |
| * |
| * @see #getFlags() |
| */ |
| public static final int DEFAULT_METHOD = 73; |
| |
| /** |
| * Return true if the receiver has no children deltas, false otherwise. |
| * |
| * @return true if the receiver has no children deltas, false otherwise. |
| */ |
| public boolean isEmpty(); |
| |
| /** |
| * Returns the key of this delta. |
| * |
| * @return the key of this delta |
| */ |
| public String getKey(); |
| |
| /** |
| * Returns the kind of this delta that describe how an element has changed. |
| * |
| * @return the kind of this delta that describe how an element has changed |
| */ |
| public int getKind(); |
| |
| /** |
| * Returns flags that describe how an element has changed. |
| * |
| * @return flags that describe how an element has changed |
| */ |
| public int getFlags(); |
| |
| /** |
| * Returns the type of the element on which a delta occurred. Any of |
| * {@link IDelta#ANNOTATION_ELEMENT_TYPE}, {@link IDelta#ENUM_ELEMENT_TYPE}, |
| * {@link IDelta#CONSTRUCTOR_ELEMENT_TYPE}, |
| * {@link IDelta#METHOD_ELEMENT_TYPE}, {@link IDelta#INTERFACE_ELEMENT_TYPE} |
| * , {@link IDelta#CLASS_ELEMENT_TYPE}, {@link IDelta#FIELD_ELEMENT_TYPE}, |
| * {@link IDelta#API_COMPONENT_ELEMENT_TYPE} and |
| * {@link IDelta#API_PROFILE_ELEMENT_TYPE}. |
| * |
| * @return flags that describe how an element has changed |
| */ |
| public int getElementType(); |
| |
| /** |
| * Returns the children of the receiver. Return an empty list if none |
| * |
| * @return children of the receiver |
| */ |
| public IDelta[] getChildren(); |
| |
| /** |
| * Traverse the given delta and apply the visitor |
| * |
| * @param visitor the given delta visitor |
| */ |
| public void accept(DeltaVisitor visitor); |
| |
| /** |
| * Returns the type name against which the delta is returned. |
| * |
| * @return the type name against which the delta is returned. |
| */ |
| public String getTypeName(); |
| |
| /** |
| * Returns the delta's description. This can be used as an error message. |
| * The message is returned in the current locale. |
| * |
| * @return the delta's description |
| */ |
| public String getMessage(); |
| |
| /** |
| * Returns the set of arguments that can be used to compose NLS'd messages. |
| * These arguments will typically be type, method and field names. |
| * |
| * @return the set of arguments to compose NLS'd messages |
| */ |
| public String[] getArguments(); |
| |
| /** |
| * Returns the delta's current restrictions. |
| * |
| * @return the delta's current restrictions |
| */ |
| public int getCurrentRestrictions(); |
| |
| /** |
| * Returns the delta's previous restrictions. |
| * |
| * @return the delta's previous restrictions |
| */ |
| public int getPreviousRestrictions(); |
| |
| /** |
| * Returns the delta's new modifiers. This corresponds to the new modifiers |
| * of the affected element. by the delta. |
| * |
| * @return the delta's new modifiers |
| */ |
| public int getNewModifiers(); |
| |
| /** |
| * Returns the delta's old modifiers. This corresponds to the old modifiers |
| * of the affected element. by the delta. |
| * |
| * @return the delta's old modifiers |
| */ |
| public int getOldModifiers(); |
| |
| /** |
| * Returns the component identifier including its version identifier in |
| * which the given delta is reported, or <code>null</code>. Can be |
| * <code>null</code> if the delta is reported against an API profile. |
| * |
| * @return the component id in which the given delta is reported, or |
| * <code>null</code> if none |
| */ |
| public String getComponentVersionId(); |
| |
| /** |
| * Returns the component identifier without its version identifier in which |
| * the given delta is reported, or <code>null</code>. Can be |
| * <code>null</code> if the delta is reported against an API profile. |
| * |
| * @return the component id in which the given delta is reported, or |
| * <code>null</code> if none |
| */ |
| public String getComponentId(); |
| } |