Package japicmp.model
Class JApiBehavior
- java.lang.Object
-
- japicmp.model.JApiBehavior
-
- All Implemented Interfaces:
JApiCanBeSynthetic,JApiCompatibility,JApiHasAbstractModifier,JApiHasAccessModifier,JApiHasAnnotations,JApiHasBridgeModifier,JApiHasChangeStatus,JApiHasFinalModifier,JApiHasLineNumber,JApiHasModifiers,JApiHasStaticModifier,JApiHasSyntheticAttribute,JApiHasSyntheticModifier
- Direct Known Subclasses:
JApiConstructor,JApiMethod
public class JApiBehavior extends java.lang.Object implements JApiHasModifiers, JApiHasChangeStatus, JApiHasAccessModifier, JApiHasStaticModifier, JApiHasFinalModifier, JApiHasAbstractModifier, JApiCompatibility, JApiHasAnnotations, JApiHasBridgeModifier, JApiCanBeSynthetic, JApiHasLineNumber
-
-
Field Summary
Fields Modifier and Type Field Description private JApiModifier<AbstractModifier>abstractModifierprivate JApiModifier<AccessModifier>accessModifierprivate java.util.List<JApiAnnotation>annotationsprivate JApiModifier<BridgeModifier>bridgeModifierprotected JApiChangeStatuschangeStatusprivate java.util.List<JApiCompatibilityChange>compatibilityChangesprivate java.util.List<JApiException>exceptionsprivate JApiModifier<FinalModifier>finalModifierprivate JApiClassjApiClassprivate JarArchiveComparatorjarArchiveComparatorprivate java.lang.Stringnameprivate Optional<java.lang.Integer>newLineNumberprivate Optional<java.lang.Integer>oldLineNumberprivate java.util.List<JApiParameter>parametersprivate JApiModifier<StaticModifier>staticModifierprivate JApiAttribute<SyntheticAttribute>syntheticAttributeprivate JApiModifier<SyntheticModifier>syntheticModifier
-
Constructor Summary
Constructors Constructor Description JApiBehavior(JApiClass jApiClass, java.lang.String name, Optional<? extends javassist.CtBehavior> oldBehavior, Optional<? extends javassist.CtBehavior> newBehavior, JApiChangeStatus changeStatus, JarArchiveComparator jarArchiveComparator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddParameter(JApiParameter jApiParameter)private voidcomputeAnnotationChanges(java.util.List<JApiAnnotation> annotations, Optional<? extends javassist.CtBehavior> oldBehavior, Optional<? extends javassist.CtBehavior> newBehavior, JarArchiveComparatorOptions options)private voidcomputeAnnotationChangesConstructor(java.util.List<JApiAnnotation> annotations, Optional<javassist.CtConstructor> oldBehavior, Optional<javassist.CtConstructor> newBehavior, JarArchiveComparatorOptions options)private voidcomputeAnnotationChangesMethod(java.util.List<JApiAnnotation> annotations, Optional<javassist.CtMethod> oldBehavior, Optional<javassist.CtMethod> newBehavior, JarArchiveComparatorOptions options)private java.util.List<JApiException>computeExceptionChanges(Optional<? extends javassist.CtBehavior> oldMethodOptional, Optional<? extends javassist.CtBehavior> newMethodOptional)private JApiChangeStatusevaluateChangeStatus(JApiChangeStatus changeStatus)private JApiModifier<AbstractModifier>extractAbstractModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)private JApiModifier<AccessModifier>extractAccessModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)private JApiModifier<BridgeModifier>extractBridgeModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)private java.util.List<java.lang.String>extractExceptions(Optional<? extends javassist.CtBehavior> methodOptional)private JApiModifier<FinalModifier>extractFinalModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)private JApiModifier<StaticModifier>extractStaticModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)protected JApiAttribute<SyntheticAttribute>extractSyntheticAttribute(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)private JApiModifier<SyntheticModifier>extractSyntheticModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)Optional<java.lang.Integer>geNewLineNumber()Returns the line number in the source file of the new element.JApiModifier<AbstractModifier>getAbstractModifier()Returns the abstract modifier.JApiModifier<AccessModifier>getAccessModifier()Returns the access modifier.java.util.List<JApiAnnotation>getAnnotations()Returns a list of annotations asJApiAnnotation.java.util.List<JApiAttribute<? extends java.lang.Enum<?>>>getAttributes()JApiModifier<BridgeModifier>getBridgeModifier()Returns the bridge modifier.JApiChangeStatusgetChangeStatus()Returns the change status of this element.java.util.List<JApiCompatibilityChange>getCompatibilityChanges()Returns all compatibility changes.java.util.List<JApiException>getExceptions()JApiModifier<FinalModifier>getFinalModifier()Returns the final modifier.JApiClassgetjApiClass()private Optional<java.lang.Integer>getLineNumber(Optional<? extends javassist.CtBehavior> methodOptional)java.util.List<? extends JApiModifier<? extends java.lang.Enum<? extends java.lang.Enum<?>>>>getModifiers()Returns a list of modifiers.java.lang.StringgetName()java.lang.StringgetNewLineNumberAsString()Optional<java.lang.Integer>getOldLineNumber()Returns the line number in the source file of the old element.java.lang.StringgetOldLineNumberAsString()java.util.List<JApiParameter>getParameters()JApiModifier<StaticModifier>getStaticModifier()Returns the static modifier.JApiAttribute<SyntheticAttribute>getSyntheticAttribute()JApiModifier<SyntheticModifier>getSyntheticModifier()Returns the synthetic modifier.booleanhasSameParameter(JApiMethod method)booleanisBinaryCompatible()Returns true if this element has changed binary compatible.booleanisSourceCompatible()Returns true if this element has changed source compatible.
-
-
-
Field Detail
-
jApiClass
private final JApiClass jApiClass
-
name
private final java.lang.String name
-
jarArchiveComparator
private final JarArchiveComparator jarArchiveComparator
-
parameters
private final java.util.List<JApiParameter> parameters
-
annotations
private final java.util.List<JApiAnnotation> annotations
-
accessModifier
private final JApiModifier<AccessModifier> accessModifier
-
finalModifier
private final JApiModifier<FinalModifier> finalModifier
-
staticModifier
private final JApiModifier<StaticModifier> staticModifier
-
abstractModifier
private final JApiModifier<AbstractModifier> abstractModifier
-
bridgeModifier
private final JApiModifier<BridgeModifier> bridgeModifier
-
syntheticModifier
private final JApiModifier<SyntheticModifier> syntheticModifier
-
syntheticAttribute
private final JApiAttribute<SyntheticAttribute> syntheticAttribute
-
exceptions
private final java.util.List<JApiException> exceptions
-
changeStatus
protected JApiChangeStatus changeStatus
-
oldLineNumber
private final Optional<java.lang.Integer> oldLineNumber
-
newLineNumber
private final Optional<java.lang.Integer> newLineNumber
-
compatibilityChanges
private final java.util.List<JApiCompatibilityChange> compatibilityChanges
-
-
Constructor Detail
-
JApiBehavior
public JApiBehavior(JApiClass jApiClass, java.lang.String name, Optional<? extends javassist.CtBehavior> oldBehavior, Optional<? extends javassist.CtBehavior> newBehavior, JApiChangeStatus changeStatus, JarArchiveComparator jarArchiveComparator)
-
-
Method Detail
-
computeExceptionChanges
private java.util.List<JApiException> computeExceptionChanges(Optional<? extends javassist.CtBehavior> oldMethodOptional, Optional<? extends javassist.CtBehavior> newMethodOptional)
-
extractExceptions
private java.util.List<java.lang.String> extractExceptions(Optional<? extends javassist.CtBehavior> methodOptional)
-
getLineNumber
private Optional<java.lang.Integer> getLineNumber(Optional<? extends javassist.CtBehavior> methodOptional)
-
computeAnnotationChanges
private void computeAnnotationChanges(java.util.List<JApiAnnotation> annotations, Optional<? extends javassist.CtBehavior> oldBehavior, Optional<? extends javassist.CtBehavior> newBehavior, JarArchiveComparatorOptions options)
-
computeAnnotationChangesMethod
private void computeAnnotationChangesMethod(java.util.List<JApiAnnotation> annotations, Optional<javassist.CtMethod> oldBehavior, Optional<javassist.CtMethod> newBehavior, JarArchiveComparatorOptions options)
-
computeAnnotationChangesConstructor
private void computeAnnotationChangesConstructor(java.util.List<JApiAnnotation> annotations, Optional<javassist.CtConstructor> oldBehavior, Optional<javassist.CtConstructor> newBehavior, JarArchiveComparatorOptions options)
-
evaluateChangeStatus
private JApiChangeStatus evaluateChangeStatus(JApiChangeStatus changeStatus)
-
extractSyntheticAttribute
protected JApiAttribute<SyntheticAttribute> extractSyntheticAttribute(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
hasSameParameter
public boolean hasSameParameter(JApiMethod method)
-
extractStaticModifier
private JApiModifier<StaticModifier> extractStaticModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
extractFinalModifier
private JApiModifier<FinalModifier> extractFinalModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
extractAccessModifier
private JApiModifier<AccessModifier> extractAccessModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
extractAbstractModifier
private JApiModifier<AbstractModifier> extractAbstractModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
extractBridgeModifier
private JApiModifier<BridgeModifier> extractBridgeModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
extractSyntheticModifier
private JApiModifier<SyntheticModifier> extractSyntheticModifier(Optional<? extends javassist.CtBehavior> oldBehaviorOptional, Optional<? extends javassist.CtBehavior> newBehaviorOptional)
-
getModifiers
public java.util.List<? extends JApiModifier<? extends java.lang.Enum<? extends java.lang.Enum<?>>>> getModifiers()
Description copied from interface:JApiHasModifiersReturns a list of modifiers.- Specified by:
getModifiersin interfaceJApiHasModifiers- Returns:
- a list of modifiers
-
getName
public java.lang.String getName()
-
getChangeStatus
public JApiChangeStatus getChangeStatus()
Description copied from interface:JApiHasChangeStatusReturns the change status of this element.- Specified by:
getChangeStatusin interfaceJApiHasChangeStatus- Returns:
- the change status of this element
-
getParameters
public java.util.List<JApiParameter> getParameters()
-
addParameter
public void addParameter(JApiParameter jApiParameter)
-
getAccessModifier
public JApiModifier<AccessModifier> getAccessModifier()
Description copied from interface:JApiHasAccessModifierReturns the access modifier.- Specified by:
getAccessModifierin interfaceJApiHasAccessModifier- Returns:
- the access modifier
-
getFinalModifier
public JApiModifier<FinalModifier> getFinalModifier()
Description copied from interface:JApiHasFinalModifierReturns the final modifier.- Specified by:
getFinalModifierin interfaceJApiHasFinalModifier- Returns:
- the final modifier
-
getStaticModifier
public JApiModifier<StaticModifier> getStaticModifier()
Description copied from interface:JApiHasStaticModifierReturns the static modifier.- Specified by:
getStaticModifierin interfaceJApiHasStaticModifier- Returns:
- the static modifier
-
getAbstractModifier
public JApiModifier<AbstractModifier> getAbstractModifier()
Description copied from interface:JApiHasAbstractModifierReturns the abstract modifier.- Specified by:
getAbstractModifierin interfaceJApiHasAbstractModifier- Returns:
- the abstract modifier
-
getAttributes
public java.util.List<JApiAttribute<? extends java.lang.Enum<?>>> getAttributes()
-
getBridgeModifier
public JApiModifier<BridgeModifier> getBridgeModifier()
Description copied from interface:JApiHasBridgeModifierReturns the bridge modifier. The ACC_BRIDGE property is added by the compiler for bridge methods.- Specified by:
getBridgeModifierin interfaceJApiHasBridgeModifier- Returns:
- the bridge modifier
-
getSyntheticModifier
public JApiModifier<SyntheticModifier> getSyntheticModifier()
Description copied from interface:JApiHasSyntheticModifierReturns the synthetic modifier.- Specified by:
getSyntheticModifierin interfaceJApiHasSyntheticModifier- Returns:
- the synthetic modifier
-
getSyntheticAttribute
public JApiAttribute<SyntheticAttribute> getSyntheticAttribute()
- Specified by:
getSyntheticAttributein interfaceJApiHasSyntheticAttribute
-
isBinaryCompatible
public boolean isBinaryCompatible()
Description copied from interface:JApiCompatibilityReturns true if this element has changed binary compatible.- Specified by:
isBinaryCompatiblein interfaceJApiCompatibility- Returns:
- true if this element has changed binary compatible
-
isSourceCompatible
public boolean isSourceCompatible()
Description copied from interface:JApiCompatibilityReturns true if this element has changed source compatible.- Specified by:
isSourceCompatiblein interfaceJApiCompatibility- Returns:
- true if this element has changed source compatible
-
getCompatibilityChanges
public java.util.List<JApiCompatibilityChange> getCompatibilityChanges()
Description copied from interface:JApiCompatibilityReturns all compatibility changes.- Specified by:
getCompatibilityChangesin interfaceJApiCompatibility- Returns:
- a list of compatibility changes
-
getAnnotations
public java.util.List<JApiAnnotation> getAnnotations()
Description copied from interface:JApiHasAnnotationsReturns a list of annotations asJApiAnnotation.- Specified by:
getAnnotationsin interfaceJApiHasAnnotations- Returns:
- a list of annotations as
JApiAnnotation
-
getOldLineNumber
public Optional<java.lang.Integer> getOldLineNumber()
Description copied from interface:JApiHasLineNumberReturns the line number in the source file of the old element.- Specified by:
getOldLineNumberin interfaceJApiHasLineNumber- Returns:
- the line number in the source file of the old element
-
geNewLineNumber
public Optional<java.lang.Integer> geNewLineNumber()
Description copied from interface:JApiHasLineNumberReturns the line number in the source file of the new element.- Specified by:
geNewLineNumberin interfaceJApiHasLineNumber- Returns:
- the line number in the source file of the new element
-
getOldLineNumberAsString
public java.lang.String getOldLineNumberAsString()
-
getNewLineNumberAsString
public java.lang.String getNewLineNumberAsString()
-
getExceptions
public java.util.List<JApiException> getExceptions()
-
getjApiClass
public JApiClass getjApiClass()
-
-