Package org.openflexo.pamela.patterns
Class PatternInstance<P extends PatternDefinition>
- java.lang.Object
-
- org.openflexo.pamela.patterns.PatternInstance<P>
-
- Type Parameters:
P
- Type ofPatternDefinition
this instance is an instance of
public abstract class PatternInstance<P extends PatternDefinition> extends java.lang.Object
Abstract base class for an instance of aPatternDefinition
It has the responsibility of:- Maintaining state variables of the pattern instance
- Enforcing invariants of the
Authenticator
annotated class. - Enforcing preconditions of the
Authenticator
annotated class. - Enforcing postconditions of the
Authenticator
annotated class.
-
-
Constructor Summary
Constructors Constructor Description PatternInstance(P patternDefinition)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description PamelaMetaModel
getModelContext()
P
getPatternDefinition()
abstract void
processMethodAfterInvoke(java.lang.Object instance, java.lang.reflect.Method method, java.lang.Object returnValue, java.lang.Object[] args)
abstract ReturnWrapper
processMethodBeforeInvoke(java.lang.Object instance, java.lang.reflect.Method method, java.lang.Object[] args)
protected void
registerStakeHolder(java.lang.Object stakeHolder, java.lang.String role)
-
-
-
Constructor Detail
-
PatternInstance
public PatternInstance(P patternDefinition)
-
-
Method Detail
-
getPatternDefinition
public P getPatternDefinition()
-
getModelContext
public PamelaMetaModel getModelContext()
-
registerStakeHolder
protected void registerStakeHolder(java.lang.Object stakeHolder, java.lang.String role)
-
processMethodBeforeInvoke
public abstract ReturnWrapper processMethodBeforeInvoke(java.lang.Object instance, java.lang.reflect.Method method, java.lang.Object[] args) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException, java.lang.NoSuchMethodException
- Throws:
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
-
processMethodAfterInvoke
public abstract void processMethodAfterInvoke(java.lang.Object instance, java.lang.reflect.Method method, java.lang.Object returnValue, java.lang.Object[] args) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException, java.lang.NoSuchMethodException
- Throws:
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
-
-