Codota Logo
Versioning
Code IndexAdd Codota to your IDE (free)

How to use
Versioning
in
org.hibernate.engine.internal

Best Java code snippets using org.hibernate.engine.internal.Versioning (Showing top 20 results out of 315)

  • Add the Codota plugin to your IDE and get smart completions
private void myMethod () {
List l =
  • Codota Iconnew LinkedList()
  • Codota IconCollections.emptyList()
  • Codota Iconnew ArrayList()
  • Smart code suggestions by Codota
}
origin: hibernate/hibernate-orm

/**
 * Perform an SQL INSERT, and then retrieve a generated identifier.
 * <p/>
 * This form is used for PostInsertIdentifierGenerator-style ids (IDENTITY,
 * select, etc).
 */
protected Serializable insert(
    final Object[] fields,
    final boolean[] notNull,
    String sql,
    final Object object,
    final SharedSessionContractImplementor session) throws HibernateException {
  if ( LOG.isTraceEnabled() ) {
    LOG.tracev( "Inserting entity: {0} (native id)", getEntityName() );
    if ( isVersioned() ) {
      LOG.tracev( "Version: {0}", Versioning.getVersion( fields, this ) );
    }
  }
  Binder binder = new Binder() {
    public void bindValues(PreparedStatement ps) throws SQLException {
      dehydrate( null, fields, notNull, propertyColumnInsertable, 0, ps, session, false );
    }
    public Object getEntity() {
      return object;
    }
  };
  return identityDelegate.performInsert( sql, session, binder );
}
origin: hibernate/hibernate-orm

/**
 * Convenience method to retrieve an entities next version value
 */
private Object getNextVersion(FlushEntityEvent event) throws HibernateException {
  EntityEntry entry = event.getEntityEntry();
  EntityPersister persister = entry.getPersister();
  if ( persister.isVersioned() ) {
    Object[] values = event.getPropertyValues();
    if ( entry.isBeingReplicated() ) {
      return Versioning.getVersion( values, persister );
    }
    else {
      int[] dirtyProperties = event.getDirtyProperties();
      final boolean isVersionIncrementRequired = isVersionIncrementRequired(
          event,
          entry,
          persister,
          dirtyProperties
      );
      final Object nextVersion = isVersionIncrementRequired ?
          Versioning.increment( entry.getVersion(), persister.getVersionType(), event.getSession() ) :
          entry.getVersion(); //use the current version
      Versioning.setVersion( values, nextVersion, persister );
      return nextVersion;
    }
  }
  else {
    return null;
  }
}
origin: hibernate/hibernate-orm

private boolean isVersionIncrementRequired(
    FlushEntityEvent event,
    EntityEntry entry,
    EntityPersister persister,
    int[] dirtyProperties
) {
  final boolean isVersionIncrementRequired = entry.getStatus() != Status.DELETED && (
      dirtyProperties == null ||
          Versioning.isVersionIncrementRequired(
              dirtyProperties,
              event.hasDirtyCollection(),
              persister.getPropertyVersionability()
          )
  );
  return isVersionIncrementRequired;
}
origin: hibernate/hibernate-orm

@Override
public void update(String entityName, Object entity) {
  checkOpen();
  EntityPersister persister = getEntityPersister( entityName, entity );
  Serializable id = persister.getIdentifier( entity, this );
  Object[] state = persister.getPropertyValues( entity );
  Object oldVersion;
  if ( persister.isVersioned() ) {
    oldVersion = persister.getVersion( entity );
    Object newVersion = Versioning.increment( oldVersion, persister.getVersionType(), this );
    Versioning.setVersion( state, newVersion, persister );
    persister.setPropertyValues( entity, state );
  }
  else {
    oldVersion = null;
  }
  persister.update( id, state, null, false, null, oldVersion, entity, null, this );
}
origin: hibernate/hibernate-orm

substitute = Versioning.seedVersion(
    values,
    persister.getVersionProperty(),
origin: hibernate/hibernate-orm

fields[versionProperty] = seed( versionType, session );
return true;
origin: org.hibernate/com.springsource.org.hibernate.core

@Override
public void update(String entityName, Object entity) {
  errorIfClosed();
  EntityPersister persister = getEntityPersister(entityName, entity);
  Serializable id = persister.getIdentifier( entity, this );
  Object[] state = persister.getPropertyValues( entity );
  Object oldVersion;
  if ( persister.isVersioned() ) {
    oldVersion = persister.getVersion( entity );
    Object newVersion = Versioning.increment( oldVersion, persister.getVersionType(), this );
    Versioning.setVersion(state, newVersion, persister);
    persister.setPropertyValues( entity, state );
  }
  else {
    oldVersion = null;
  }
  persister.update(id, state, null, false, null, oldVersion, entity, null, this);
}
origin: hibernate/hibernate-orm

@Override
public Serializable insert(String entityName, Object entity) {
  checkOpen();
  EntityPersister persister = getEntityPersister( entityName, entity );
  Serializable id = persister.getIdentifierGenerator().generate( this, entity );
  Object[] state = persister.getPropertyValues( entity );
  if ( persister.isVersioned() ) {
    boolean substitute = Versioning.seedVersion(
        state,
        persister.getVersionProperty(),
        persister.getVersionType(),
        this
    );
    if ( substitute ) {
      persister.setPropertyValues( entity, state );
    }
  }
  if ( id == IdentifierGeneratorHelper.POST_INSERT_INDICATOR ) {
    id = persister.insert( state, entity, this );
  }
  else {
    persister.insert( id, state, entity, this );
  }
  persister.setIdentifier( entity, id, this );
  return id;
}
origin: org.hibernate/com.springsource.org.hibernate

fields[versionProperty] = seed( versionType, session );
return true;
origin: hibernate/hibernate-orm

private AbstractEntityInsertAction addInsertAction(
    Object[] values,
    Serializable id,
    Object entity,
    EntityPersister persister,
    boolean useIdentityColumn,
    EventSource source,
    boolean shouldDelayIdentityInserts) {
  if ( useIdentityColumn ) {
    EntityIdentityInsertAction insert = new EntityIdentityInsertAction(
        values, entity, persister, isVersionIncrementDisabled(), source, shouldDelayIdentityInserts
    );
    source.getActionQueue().addAction( insert );
    return insert;
  }
  else {
    Object version = Versioning.getVersion( values, persister );
    EntityInsertAction insert = new EntityInsertAction(
        id, values, entity, version, persister, isVersionIncrementDisabled(), source
    );
    source.getActionQueue().addAction( insert );
    return insert;
  }
}
origin: org.hibernate/com.springsource.org.hibernate.core

/**
 * Convience method to retreive an entities next version value
 */
private Object getNextVersion(FlushEntityEvent event) throws HibernateException {
  EntityEntry entry = event.getEntityEntry();
  EntityPersister persister = entry.getPersister();
  if ( persister.isVersioned() ) {
    Object[] values = event.getPropertyValues();
    if ( entry.isBeingReplicated() ) {
      return Versioning.getVersion(values, persister);
    }
    else {
      int[] dirtyProperties = event.getDirtyProperties();
      final boolean isVersionIncrementRequired = isVersionIncrementRequired(
          event,
          entry,
          persister,
          dirtyProperties
        );
      final Object nextVersion = isVersionIncrementRequired ?
          Versioning.increment( entry.getVersion(), persister.getVersionType(), event.getSession() ) :
          entry.getVersion(); //use the current version
      Versioning.setVersion(values, nextVersion, persister);
      return nextVersion;
    }
  }
  else {
    return null;
  }
}
origin: org.hibernate/com.springsource.org.hibernate

@Override
public void update(String entityName, Object entity) {
  errorIfClosed();
  EntityPersister persister = getEntityPersister(entityName, entity);
  Serializable id = persister.getIdentifier( entity, this );
  Object[] state = persister.getPropertyValues( entity );
  Object oldVersion;
  if ( persister.isVersioned() ) {
    oldVersion = persister.getVersion( entity );
    Object newVersion = Versioning.increment( oldVersion, persister.getVersionType(), this );
    Versioning.setVersion(state, newVersion, persister);
    persister.setPropertyValues( entity, state );
  }
  else {
    oldVersion = null;
  }
  persister.update(id, state, null, false, null, oldVersion, entity, null, this);
}
origin: hibernate/hibernate-orm

/**
 * Transform the array of property indexes to an array of booleans,
 * true when the property is dirty
 */
protected final boolean[] getPropertiesToUpdate(final int[] dirtyProperties, final boolean hasDirtyCollection) {
  final boolean[] propsToUpdate = new boolean[entityMetamodel.getPropertySpan()];
  final boolean[] updateability = getPropertyUpdateability(); //no need to check laziness, dirty checking handles that
  for ( int j = 0; j < dirtyProperties.length; j++ ) {
    int property = dirtyProperties[j];
    if ( updateability[property] ) {
      propsToUpdate[property] = true;
    }
  }
  if ( isVersioned() && updateability[getVersionProperty()] ) {
    propsToUpdate[getVersionProperty()] =
        Versioning.isVersionIncrementRequired(
            dirtyProperties,
            hasDirtyCollection,
            getPropertyVersionability()
        );
  }
  return propsToUpdate;
}
origin: org.hibernate.orm/hibernate-core

substitute = Versioning.seedVersion(
    values,
    versionDescriptor,
origin: org.hibernate/com.springsource.org.hibernate.core

fields[versionProperty] = seed( versionType, session );
return true;
origin: hibernate/hibernate-orm

  final LockMode lockMode,
  final SharedSessionContractImplementor session) {
final Object version = Versioning.getVersion( values, persister );
session.getPersistenceContext().addEntry(
    object,
origin: org.hibernate/com.springsource.org.hibernate

/**
 * Convience method to retreive an entities next version value
 */
private Object getNextVersion(FlushEntityEvent event) throws HibernateException {
  EntityEntry entry = event.getEntityEntry();
  EntityPersister persister = entry.getPersister();
  if ( persister.isVersioned() ) {
    Object[] values = event.getPropertyValues();
    if ( entry.isBeingReplicated() ) {
      return Versioning.getVersion(values, persister);
    }
    else {
      int[] dirtyProperties = event.getDirtyProperties();
      final boolean isVersionIncrementRequired = isVersionIncrementRequired(
          event,
          entry,
          persister,
          dirtyProperties
        );
      final Object nextVersion = isVersionIncrementRequired ?
          Versioning.increment( entry.getVersion(), persister.getVersionType(), event.getSession() ) :
          entry.getVersion(); //use the current version
      Versioning.setVersion(values, nextVersion, persister);
      return nextVersion;
    }
  }
  else {
    return null;
  }
}
origin: org.hibernate.orm/hibernate-core

@Override
public void update(String entityName, Object entity) {
  checkOpen();
  EntityTypeDescriptor entityDescriptor = getEntityDescriptor( entityName, entity );
  Object id = entityDescriptor.getHierarchy().getIdentifierDescriptor().extractIdentifier( entity, this );
  Object[] state = entityDescriptor.getPropertyValues( entity );
  Object oldVersion;
  final VersionDescriptor<Object, Object> versionDescriptor = entityDescriptor.getHierarchy().getVersionDescriptor();
  if ( versionDescriptor != null ) {
    oldVersion = entityDescriptor.getVersion( entity );
    final VersionSupport versionSupport = versionDescriptor.getVersionSupport();
    Object newVersion = Versioning.increment( oldVersion, versionSupport, this );
    Versioning.setVersion( state, newVersion, entityDescriptor );
    entityDescriptor.setPropertyValues( entity, state );
  }
  else {
    oldVersion = null;
  }
  entityDescriptor.update( id, state, null, false, null, oldVersion, entity, null, this );
}
origin: hibernate/hibernate-orm

Versioning.isVersionIncrementRequired(
    dirtyProperties,
    hasDirtyCollection,
origin: org.hibernate/com.springsource.org.hibernate

substitute = Versioning.seedVersion(
    values,
    persister.getVersionProperty(),
org.hibernate.engine.internalVersioning

Javadoc

Utilities for dealing with optimistic locking values.

Most used methods

  • getVersion
    Extract the optimistic locking value out of the entity state snapshot.
  • increment
    Generate the next increment in the optimistic locking value according the VersionType contract for t
  • isVersionIncrementRequired
    Do we need to increment the version number, given the dirty properties?
  • seed
    Create an initial optimistic locking value according the VersionTypecontract for the version propert
  • seedVersion
    Create an initial optimistic locking value according the VersionSupportcontract for the version prop
  • setVersion
    Inject the optimistic locking value into the entity state snapshot.

Popular in Java

  • Parsing JSON documents to java classes using gson
  • orElseThrow (Optional)
    Return the contained value, if present, otherwise throw an exception to be created by the provided s
  • getApplicationContext (Context)
  • getResourceAsStream (ClassLoader)
    Returns a stream for the resource with the specified name. See #getResource(String) for a descriptio
  • ConnectException (java.net)
    A ConnectException is thrown if a connection cannot be established to a remote host on a specific po
  • SecureRandom (java.security)
    This class generates cryptographically secure pseudo-random numbers. It is best to invoke SecureRand
  • JCheckBox (javax.swing)
  • JFileChooser (javax.swing)
  • JFrame (javax.swing)
  • Reflections (org.reflections)
    Reflections one-stop-shop objectReflections scans your classpath, indexes the metadata, allows you t
Codota Logo
  • Products

    Search for Java codeSearch for JavaScript codeEnterprise
  • IDE Plugins

    IntelliJ IDEAWebStormAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogCodota Academy Plugin user guide Terms of usePrivacy policyJava Code IndexJavascript Code Index
Get Codota for your IDE now