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

com.avaje.ebean.event.BeanPersistRequest Maven / Gradle / Ivy

There is a newer version: 8.1.1
Show newest version
package com.avaje.ebean.event;

import com.avaje.ebean.EbeanServer;
import com.avaje.ebean.Transaction;
import com.avaje.ebean.ValuePair;

import java.util.Map;
import java.util.Set;

/**
 * Holds the information available for a bean persist (insert, update or
 * delete).
 * 

* This is made available for the BeanPersistControllers. *

*/ public interface BeanPersistRequest { /** * Return the server processing the request. */ EbeanServer getEbeanServer(); /** * Return the Transaction associated with this request. */ Transaction getTransaction(); /** * For an update or delete of a partially populated bean this is the set of * loaded properties and otherwise returns null. */ Set getLoadedProperties(); /** * For an update this is the set of properties that where updated. *

* Note that hasDirtyProperty() is a more efficient check than this method and * should be preferred if it satisfies the requirement. *

*/ Set getUpdatedProperties(); /** * Return true for an update request if at least one of dirty properties is contained * in the given set of property names. *

* This method will produce less GC compared with getUpdatedProperties() and should * be preferred if it satisfies the requirement. *

*

* Note that this method is used by the default ChangeLogFilter mechanism for when * the @ChangeLog updatesThatInclude attribute has been specified. *

* * @param propertyNames a set of property names which we are checking to see if at least * one of them is dirty. */ boolean hasDirtyProperty(Set propertyNames); /** * Returns the bean being inserted updated or deleted. */ T getBean(); /** * Returns a map of the properties that have changed and their new and old values. */ Map getUpdatedValues(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy