Either {@link #save(Object)} or {@link #update(Object)} the giveninstance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).
This operation cascades to associated instances if the association is mapped with
cascade="save-update".
@see Session#save(java.lang.Object)
@see Session#update(Object object)
@param object a transient or detached instance containing new or updated state
@throws HibernateException