default ENTITY update(ENTITY entity) {
        return updater().apply(entity);
    }
Updates the provided entity in the underlying database and returns a
potentially updated entity. If the update fails for any reason, an
unchecked {@link SpeedmentException} is thrown.
<p>
It is unspecified if the returned updated entity is the same provided
entity instance or another entity instance. It is erroneous to assume
either, so you should use only the returned entity after the method has
been called. However, it is guaranteed that the provided entity is
untouched if an exception is thrown.
<p>
The fields of returned entity instance may differ from the provided
entity fields due to auto generated column(s) or because of any other
modification that the underlying database imposed on the persisted
entity.
<p>
Entities are uniquely identified by their primary key(s).

@param entity to update
@return an entity reflecting the result of the updated entity

@throws SpeedmentException if the underlying database throws an exception
(e.g. SQLException)
runtime-parent/runtime-core/src/main/java/com/speedment/runtime/core/manager/Manager.java