public abstract class AbstractChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD> extends java.lang.Object implements ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>
This class handles generic type resolution and provides the common fields needed by all templates: changeId, isTransactional, and configuration.
For new templates, extend one of the specialized abstract classes:
AbstractSimpleTemplate - for templates with a single apply/rollback stepAbstractSteppableTemplate - for templates with multiple steps| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
changeId |
protected SHARED_CONFIGURATION_FIELD |
configuration |
protected boolean |
isTransactional |
| Constructor and Description |
|---|
AbstractChangeTemplate(java.lang.Class<?>... additionalReflectiveClass) |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Class<APPLY_FIELD> |
getApplyPayloadClass() |
java.lang.Class<SHARED_CONFIGURATION_FIELD> |
getConfigurationClass() |
java.util.Collection<java.lang.Class<?>> |
getReflectiveClasses()
Returns a collection of classes that should be registered for reflective access.
|
java.lang.Class<ROLLBACK_FIELD> |
getRollbackPayloadClass() |
void |
setChangeId(java.lang.String changeId) |
void |
setConfiguration(SHARED_CONFIGURATION_FIELD configuration) |
void |
setTransactional(boolean isTransactional) |
protected java.lang.String changeId
protected boolean isTransactional
protected SHARED_CONFIGURATION_FIELD configuration
public AbstractChangeTemplate(java.lang.Class<?>... additionalReflectiveClass)
public final java.util.Collection<java.lang.Class<?>> getReflectiveClasses()
ReflectionMetadataProviderThis method does not perform any registration itself—it only declares the classes that need to be registered. The returned collection does not require a specific ordering and may contain any number of class references.
getReflectiveClasses in interface ReflectionMetadataProviderpublic void setChangeId(java.lang.String changeId)
setChangeId in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>public void setTransactional(boolean isTransactional)
setTransactional in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>public void setConfiguration(SHARED_CONFIGURATION_FIELD configuration)
setConfiguration in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>public java.lang.Class<SHARED_CONFIGURATION_FIELD> getConfigurationClass()
getConfigurationClass in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>public java.lang.Class<APPLY_FIELD> getApplyPayloadClass()
getApplyPayloadClass in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>public java.lang.Class<ROLLBACK_FIELD> getRollbackPayloadClass()
getRollbackPayloadClass in interface ChangeTemplate<SHARED_CONFIGURATION_FIELD,APPLY_FIELD,ROLLBACK_FIELD>