@Override public void preInsert(CollectionPersister persister) throws HibernateException { final Iterator itr = values.iterator(); int i = 0; while ( itr.hasNext() ) { final Object entry = itr.next(); final Integer loc = i++; if ( !identifiers.containsKey( loc ) ) { //TODO: native ids final Serializable id = persister.getIdentifierGenerator().generate( getSession(), entry ); identifiers.put( loc, id ); } } }
protected interface InclusionChecker { boolean includeProperty(int propertyNumber); }
@Override public void execute(SharedSessionContractImplementor session, Object incomingObject, Object injectionContext) { final Object generatedValue = subGenerator.generate( session, incomingObject ); injector.set( injectionContext, generatedValue, session.getFactory() ); }
@Override public void execute(Connection connection) throws SQLException { PreparedStatement statement = null; try { statement = connection.prepareStatement( "INSERT INTO sequenceIdentifier VALUES (?)" ); statement.setObject( 1, sfi.getIdentifierGenerator( SequenceIdentifier.class.getName() ).generate( si, null ) ); statement.executeUpdate(); } finally { if ( statement != null ) { statement.close(); } } } }
Serializable generatedId = persister.getIdentifierGenerator().generate( source, entity ); if ( generatedId == null ) { throw new IdentifierGenerationException( "null id generated for:" + entity.getClass() );
@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; }
/** * Generate a new identifier. * * @param object the entity or collection (idbag) for which the id is being generated * @param session The session from which the request originates * * @return a new identifier * * @throws HibernateException Indicates trouble generating the identifier */ default Object generate(Object object, SharedSessionContractImplementor session) throws HibernateException { return generate( session, object ); }
public Serializable generate(SessionImplementor session, Object object) throws HibernateException { return _proxy.generate(session, object); }
public void moveToNextInterval(Class entity, javax.persistence.EntityManager em) throws IllegalAccessException, InstantiationException { javax.persistence.TableGenerator tableGenerator = null; for (Method method : entity.getMethods()) { tableGenerator = method.getAnnotation(javax.persistence.TableGenerator.class); if (tableGenerator != null) { break; } } if (tableGenerator != null && tableGenerator.allocationSize() > 1) { int allocationSize = tableGenerator.allocationSize(); org.hibernate.impl.SessionImpl session = (org.hibernate.impl.SessionImpl) em.unwrap(org.hibernate.Session.class); IdentifierGenerator idGenerator = session.getFactory().getIdentifierGenerator(entity.getName()); while ((Long)idGenerator.generate(session, entity.newInstance()) % allocationSize != allocationSize - 1); } }
import org.hibernate.id.IdentifierGenerator; public class SharedGenerator implements IdentifierGenerator { private static final IdentifierGenerator underlyingGenerator = new UUIDGenerator(); @Override public Serializable generate(SessionImplementor sessionImplementor, Object o) throws HibernateException { return underlyingGenerator.generate(sessionImplementor, o); } }
public void preInsert(CollectionPersister persister) throws HibernateException { Iterator iter = values.iterator(); int i=0; while ( iter.hasNext() ) { Object entry = iter.next(); Integer loc = i++; if ( !identifiers.containsKey(loc) ) { //TODO: native ids Serializable id = persister.getIdentifierGenerator().generate( getSession(), entry ); identifiers.put(loc, id); } } }
public void preInsert(CollectionPersister persister) throws HibernateException { Iterator iter = values.iterator(); int i=0; while ( iter.hasNext() ) { Object entry = iter.next(); Integer loc = new Integer(i++); if ( !identifiers.containsKey(loc) ) { //TODO: native ids Serializable id = persister.getIdentifierGenerator().generate( getSession(), entry ); identifiers.put(loc, id); } } }
public void preInsert(CollectionPersister persister) throws HibernateException { Iterator iter = values.iterator(); int i=0; while ( iter.hasNext() ) { Object entry = iter.next(); Integer loc = new Integer(i++); if ( !identifiers.containsKey(loc) ) { //TODO: native ids Serializable id = persister.getIdentifierGenerator().generate( getSession(), entry ); identifiers.put(loc, id); } } }
public void preInsert(CollectionPersister persister) throws HibernateException { Iterator iter = values.iterator(); int i=0; while ( iter.hasNext() ) { Object entry = iter.next(); Integer loc = i++; if ( !identifiers.containsKey(loc) ) { //TODO: native ids Serializable id = persister.getIdentifierGenerator().generate( getSession(), entry ); identifiers.put(loc, id); } } }
@Override public void preInsert(PersistentCollectionDescriptor descriptor) throws HibernateException { final Iterator itr = values.iterator(); int i = 0; while ( itr.hasNext() ) { final Object entry = itr.next(); final Integer loc = i++; if ( !identifiers.containsKey( loc ) ) { //TODO: native ids final Object id = descriptor.getIdDescriptor().getGenerator().generate( getSession(), entry ); identifiers.put( loc, id ); } } }
public static void main( String[] args ) throws Exception { Properties props = new Properties(); props.setProperty("separator", "/"); IdentifierGenerator gen = new UUIDHexGenerator(); ( (Configurable) gen ).configure(Hibernate.STRING, props, null); IdentifierGenerator gen2 = new UUIDHexGenerator(); ( (Configurable) gen2 ).configure(Hibernate.STRING, props, null); for ( int i=0; i<10; i++) { String id = (String) gen.generate(null, null); System.out.println(id); String id2 = (String) gen2.generate(null, null); System.out.println(id2); } }
public static void main( String[] args ) throws Exception { Properties props = new Properties(); props.setProperty("separator", "/"); IdentifierGenerator gen = new UUIDHexGenerator(); ( (Configurable) gen ).configure(Hibernate.STRING, props, null); IdentifierGenerator gen2 = new UUIDHexGenerator(); ( (Configurable) gen2 ).configure(Hibernate.STRING, props, null); for ( int i=0; i<10; i++) { String id = (String) gen.generate(null, null); System.out.println(id); String id2 = (String) gen2.generate(null, null); System.out.println(id2); } }
@Override public void execute(SharedSessionContractImplementor session, Object incomingObject, Object injectionContext) { final Object generatedValue = subGenerator.generate( session, incomingObject ); injector.set( injectionContext, generatedValue, session.getFactory() ); }
/** * {@inheritDoc} */ public void execute(SessionImplementor session, Object incomingObject, Object injectionContext) { final Object generatedValue = subGenerator.generate( session, incomingObject ); injector.set( injectionContext, generatedValue, session.getFactory() ); }
/** * {@inheritDoc} */ public void execute(SessionImplementor session, Object incomingObject, Object injectionContext) { final Object generatedValue = subGenerator.generate( session, incomingObject ); injector.set( injectionContext, generatedValue, session.getFactory() ); }