PerTableSerializableIdSourceKey(IdSourceKey key) { columnName = key.getColumnName(); columnValue = key.getColumnValue(); }
private String createId(IdSourceKey key) { StringBuilder builder = new StringBuilder( key.getTable() ); builder.append( ":" ); builder.append( key.getColumnName() ); builder.append( ":" ); builder.append( key.getColumnValue() ); return builder.toString(); }
@Override public void writeObject(ObjectOutput output, IdSourceKey key) throws IOException { output.writeInt( VERSION ); output.writeUTF( key.getTable() ); //Wrapping in String[] and Object[] respectively as this used to be the format, //to maintain compatibility with Hibernate OGM 5.0 output.writeObject( new String[] { key.getColumnName() } ); output.writeObject( new Object[] { key.getColumnValue() } ); }
@Override public void writeObject(ObjectOutput output, IdSourceKey key) throws IOException { output.writeInt( VERSION ); output.writeUTF( key.getTable() ); //Wrapping in String[] and Object[] respectively as this used to be the format, //to maintain compatibility with Hibernate OGM 5.0 output.writeObject( new String[] { key.getColumnName() } ); output.writeObject( new Object[] { key.getColumnValue() } ); }
private String counterName(NextValueRequest request) { StringBuilder builder = new StringBuilder(); builder.append( request.getKey().getTable() ); builder.append( "." ); builder.append( request.getKey().getColumnValue() ); return builder.toString(); } }
private String counterName(NextValueRequest request) { StringBuilder builder = new StringBuilder(); builder.append( request.getKey().getTable() ); builder.append( "." ); builder.append( request.getKey().getColumnValue() ); return builder.toString(); } }
SerializableIdSourceKey(IdSourceKey key) { columnName = key.getColumnName(); columnValue = key.getColumnValue(); table = key.getTable(); }
public static PersistentIdSourceKey fromIdSourceKey(IdSourceKey key) { return new PersistentIdSourceKey( key.getColumnName(), key.getColumnValue() ); }
public static PersistentIdSourceKey fromIdSourceKey(IdSourceKey key) { return new PersistentIdSourceKey( key.getColumnName(), key.getColumnValue() ); }
private static Document prepareIdObject(IdSourceKey key) { return prepareIdObject( key.getColumnName(), key.getColumnValue() ); }
private static Document prepareIdObject(IdSourceKey key) { return prepareIdObject( key.getColumnName(), key.getColumnValue() ); }
HotRodSequencer( RemoteCache<SequenceId, Long> remoteCache, NextValueRequest initialRequest) { this.remoteCache = remoteCache; this.increment = initialRequest.getIncrement(); this.id = new SequenceId( initialRequest.getKey().getColumnValue() ); }
public Number nextValue(NextValueRequest request) { IdSourceKey key = request.getKey(); IdSourceKeyMetadata metadata = request.getKey().getMetadata(); Long valueFromDb = null; boolean done = false; do { valueFromDb = nextValueSelect( metadata, key.getColumnValue() ); if ( valueFromDb == null ) { //if not there, insert initial value valueFromDb = nextValueInsert( metadata, key.getColumnValue(), (long) request.getInitialValue() ); } //update seq value ready for the next reader Long updatedValue = valueFromDb + (long) request.getIncrement(); done = nextValueUpdate( metadata, key.getColumnValue(), valueFromDb, updatedValue ); } while ( !done ); return valueFromDb; } }
protected String sequenceName(IdSourceKey key) { return key.getMetadata().getType() == IdSourceType.SEQUENCE ? key.getMetadata().getName() : key.getColumnValue(); }
public Number getSequenceValue(NextValueRequest request) { final String cacheName = request.getKey().getMetadata().getName(); final SequencesPerCache sequencesSet = sequencesPerCache.computeIfAbsent( cacheName, ( k ) -> { SequenceTableDefinition sequenceTableDefinition = idSchemaPerName.get( cacheName ); if ( sequenceTableDefinition == null ) { throw log.valueRequestedForUnknownSequence( request.getKey().getTable(), request.getKey().getColumnValue() ); } return new SequencesPerCache( provider.getCache( cacheName ) ); } ); return sequencesSet.getSequenceValue( request ); } }
case TABLE: IgniteCache<String, Long> cache = provider.getIdSourceCache( request.getKey().getMetadata() ); String idSourceKey = request.getKey().getColumnValue(); Long previousValue = cache.get( idSourceKey ); if ( previousValue == null ) {