All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ars.database.service.event.UpdateEvent Maven / Gradle / Ivy

The newest version!
package ars.database.service.event;

import ars.util.Beans;
import ars.invoke.request.Requester;
import ars.database.service.Service;
import ars.database.repository.Repository;

/**
 * 模型实体修改事件
 *
 * @author wuyongqiang
 */
public class UpdateEvent extends ServiceEvent {
    private static final long serialVersionUID = 1L;

    private transient Object entity; // 当前对象实体
    private transient Object original; // 原始对象实体

    public UpdateEvent(Requester requester, Service service, Object entity) {
        super(requester, service);
        if (entity == null) {
            throw new IllegalArgumentException("Entity must not be null");
        }
        this.entity = entity;
    }

    public Object getEntity() {
        return entity;
    }

    public Object getOriginal() {
        if (this.original == null) {
            Repository repository = this.getService().getRepository();
            this.original = repository.get(Beans.getValue(this.entity, repository.getPrimary()));
        }
        return original;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy