@Override public void resetIdentifier( Object entity, Serializable currentId, Object currentVersion, SharedSessionContractImplementor session) { //noinspection StatementWithEmptyBody if ( entityMetamodel.getIdentifierProperty().getIdentifierGenerator() instanceof Assigned ) { } else { //reset the id Serializable result = entityMetamodel.getIdentifierProperty() .getUnsavedValue() .getDefaultValue( currentId ); setIdentifier( entity, result, session ); //reset the version VersionProperty versionProperty = entityMetamodel.getVersionProperty(); if ( entityMetamodel.isVersioned() ) { setPropertyValue( entity, entityMetamodel.getVersionPropertyIndex(), versionProperty.getUnsavedValue().getDefaultValue( currentVersion ) ); } } }
/** * {@inheritDoc} */ public void resetIdentifier(Object entity, Serializable currentId, Object currentVersion) { // 99% of the time the session is not needed. Its only needed for certain brain-dead // interpretations of JPA 2 "derived identity" support resetIdentifier( entity, currentId, currentVersion, null ); }
/** * {@inheritDoc} */ public void resetIdentifier(Object entity, Serializable currentId, Object currentVersion) { // 99% of the time the session is not needed. Its only needed for certain brain-dead // interpretations of JPA 2 "derived identity" support resetIdentifier( entity, currentId, currentVersion, null ); }