@Handler(supports=Retireable.class) public class RetireSaveHandler extends java.lang.Object implements SaveHandler<Retireable>
RequiredDataAdvice
class uses AOP around each method in every service to check to see
if its a save* method. If it is a save* method, and the object being saved implements
Retireable
, this class is called to handle setting the
Retireable.setRetiredBy(User)
, and Retireable.setDateRetired(Date)
if not set
already. RequiredDataAdvice
class will loop over child collections on this
Retireable
that are themselves a Retireable
and retiredBy/dateRetired are set,
but ONLY IF the retired bit was set on them as well. Using the associated retire* method
in the service on the parent instance is preferred so that all child objects are indeed retired.RequiredDataAdvice
,
SaveHandler
,
RequiredDataAdvice
Constructor and Description |
---|
RetireSaveHandler() |
Modifier and Type | Method and Description |
---|---|
void |
handle(Retireable retireableObject,
User currentUser,
java.util.Date currentDate,
java.lang.String notUsed)
This method does not set "retired" to true, but rather only sets the retiredBy/dateRetired if
they are null and retired==true.
|
public void handle(Retireable retireableObject, User currentUser, java.util.Date currentDate, java.lang.String notUsed)
handle
in interface RequiredDataHandler<Retireable>
handle
in interface SaveHandler<Retireable>
retireableObject
- an OpenmrsObject that needs to have some required data setcurrentUser
- the user who is saving this objectcurrentDate
- the datetime this object is being savednotUsed
- (optional) would be the second argument in the save method, if existsRequiredDataHandler.handle(org.openmrs.OpenmrsObject,
org.openmrs.User, java.util.Date, java.lang.String)
Copyright © 2018 OpenMRS Inc.. All Rights Reserved.