DataLayerDemo.java |
package com.demo.demo.services.data; import com.demo.demo.model.obj.demo.Customer; import com.demo.demo.model.obj.demo.Line; import com.demo.demo.model.obj.demo.Order; import com.demo.demo.model.obj.demo.Stock; import java.io.Serializable; import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.SQLQuery; import org.hibernate.ReplicationMode; import org.hibernate.Session; /** * Data layer. * @author autogenerated */ public interface DataLayerDemo { /** * Deletes the given object from disk. * @param <T> A DataLayerObject-derived type * @param persistentObject Object to delete */ <T> void delete(T persistentObject); /** * Refresh the object $class.className from disk. * @param <T> A DataLayerObject-derived type * @param persistentObject Object to reload */ <T> void refresh(T persistentObject); /** * Saves the given object to disk. * @param persistentObject Object to save * @param <T> A DataLayerObject-derived type * @return Identifier of saved object */ <T> Serializable save(T persistentObject); /** * Saves or updates the given $class.className object to disk. * @param <T> A DataLayerObject-derived type * @param persistentObject Object to save */ <T> void saveOrUpdate(T persistentObject); /** * Updates the given object to disk. * @param <T> A DataLayerObject-derived type * @param persistentObject Object to update */ <T> void update(T persistentObject); /** Deletes an object of a given Id. * Will load the object internally so consider using delete (Customer obj) directly * @param id Identifier to delete */ void deleteCustomer(final Serializable id); /** * Loads the given Object. * @param id Identifier to load * @return a Customer object */ Customer loadCustomer(final Serializable id); /** * Loads the given Object. * @param id Id to load * @return An object of type T */ Customer getCustomer(final Serializable id); /** Deletes an object of a given Id. * Will load the object internally so consider using delete (Line obj) directly * @param id Identifier to delete */ void deleteLine(final Serializable id); /** * Loads the given Object. * @param id Identifier to load * @return a Line object */ Line loadLine(final Serializable id); /** * Loads the given Object. * @param id Id to load * @return An object of type T */ Line getLine(final Serializable id); /** Deletes an object of a given Id. * Will load the object internally so consider using delete (Order obj) directly * @param id Identifier to delete */ void deleteOrder(final Serializable id); /** * Loads the given Object. * @param id Identifier to load * @return a Order object */ Order loadOrder(final Serializable id); /** * Loads the given Object. * @param id Id to load * @return An object of type T */ Order getOrder(final Serializable id); /** Deletes an object of a given Id. * Will load the object internally so consider using delete (Stock obj) directly * @param id Identifier to delete */ void deleteStock(final Serializable id); /** * Loads the given Object. * @param id Identifier to load * @return a Stock object */ Stock loadStock(final Serializable id); /** * Loads the given Object. * @param id Id to load * @return An object of type T */ Stock getStock(final Serializable id); /** Returns a query handle. * @param query Query to use * @return A query instance */ Query createQuery(final String query); /** Returns a criteria handle. * @param criteria Criteria to use * @return A criteria instance */ Criteria createCriteria(final String criteria); /** Returns a Query handle based on your package-level named query. * @param query Query to use * @return A query instance */ Query getNamedQuery(final String query); /** Create a new Criteria instance, for the given entity class, or a superclass of an entity class. * @param persistentObject a class, which is persistent, or has persistent subclasses * @return Criteria instance */ @SuppressWarnings("unchecked") Criteria createCriteria(Class persistentObject); /** Flushes the currently open session. */ void flushSession(); /** Clears the currently open session. */ void clearSession(); /** Flushes and clears the currently open session. */ void flushAndClearSession(); /** Call currentSession.replicate. * @param obj to replicate * @param replicationMode mode */ void replicate(Object obj, ReplicationMode replicationMode); /** Hibernate Merge. * @param obj to merge * @return obj merged. */ Object merge(Object obj); /** Returns the current session. * @return the currently active session */ Session getCurrentSession(); /** Returns a query handle. * @param query Query to use * @return A query instance */ SQLQuery createSQLQuery(final String query); /** Remove this instance from the session cache. * Changes to the instance will not be synchronized with the database * @param obj object to evict */ void evict(Object obj);}