123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package xorm
- type BeforeInsertProcessor interface {
- BeforeInsert()
- }
- type BeforeUpdateProcessor interface {
- BeforeUpdate()
- }
- type BeforeDeleteProcessor interface {
- BeforeDelete()
- }
- type BeforeSetProcessor interface {
- BeforeSet(string, Cell)
- }
- type AfterSetProcessor interface {
- AfterSet(string, Cell)
- }
- type AfterInsertProcessor interface {
- AfterInsert()
- }
- type AfterUpdateProcessor interface {
- AfterUpdate()
- }
- type AfterDeleteProcessor interface {
- AfterDelete()
- }
- type AfterLoadProcessor interface {
- AfterLoad()
- }
- type AfterLoadSessionProcessor interface {
- AfterLoad(*Session)
- }
- type executedProcessorFunc func(*Session, interface{}) error
- type executedProcessor struct {
- fun executedProcessorFunc
- session *Session
- bean interface{}
- }
- func (executor *executedProcessor) execute() error {
- return executor.fun(executor.session, executor.bean)
- }
- func (session *Session) executeProcessors() error {
- processors := session.afterProcessors
- session.afterProcessors = make([]executedProcessor, 0)
- for _, processor := range processors {
- if err := processor.execute(); err != nil {
- return err
- }
- }
- return nil
- }
|