@SuppressWarnings("unchecked") @Override public RowSliceQuery<K, C> withColumnRange(ByteBufferRange range) { colQueryType = ColumnSliceQueryType.ColumnRange; if (range instanceof CompositeByteBufferRange) { this.compositeRange = (CompositeByteBufferRange) range; } else if (range instanceof CompositeRangeBuilder) { this.compositeRange = ((CompositeRangeBuilder)range).build(); } else if (range instanceof CqlRangeImpl) { this.columnSlice.setCqlRange((CqlRangeImpl<C>) range); } else { return this.withColumnRange(range.getStart(), range.getEnd(), range.isReversed(), range.getLimit()); } return this; }
@SuppressWarnings("unchecked") @Override public RowQuery<K, C> withColumnRange(ByteBufferRange range) { queryType = RowQueryType.ColumnRange; if (range instanceof CompositeByteBufferRange) { this.compositeRange = (CompositeByteBufferRange) range; } else if (range instanceof CompositeRangeBuilder) { this.compositeRange = ((CompositeRangeBuilder)range).build(); } else if (range instanceof CqlRangeImpl) { this.columnSlice.setCqlRange((CqlRangeImpl<C>) range); } else { return this.withColumnRange(range.getStart(), range.getEnd(), range.isReversed(), range.getLimit()); } return this; }
.withColumnRange(compSerializer.buildRange() .withPrefix("CA") .build()) .getColumnCounts() .execute().getResult(); .withPrefix("CA") .greaterThan("San Diego") .build()) .getColumnCounts() .execute().getResult(); .withPrefix("Seattle") .withPrefix(40000) .build()) .getColumnCounts() .execute().getResult();
.withColumnRange(compSerializer.buildRange() .withPrefix("CA") .build()) .getColumnCounts() .execute().getResult(); .withPrefix("CA") .greaterThan("San Diego") .build()) .getColumnCounts() .execute().getResult(); .withPrefix("Seattle") .withPrefix(40000) .build()) .getColumnCounts() .execute().getResult();
.greaterThanEquals(1) .lessThanEquals(1) .build()).execute(); Assert.assertTrue(1 == result.getResult().size()); for (Column<MockCompositeType> col : result.getResult()) {
.greaterThanEquals((byte)MessageMetadataEntryType.Unique.ordinal()) .lessThanEquals((byte)MessageMetadataEntryType.Unique.ordinal()) .build()) .execute() .getResult();
.greaterThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .lessThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .build()
SE_SERIALIZER.buildRange() .greaterThanEquals("Session3") .lessThanEquals("Session5").build()) .execute(); SE_SERIALIZER.buildRange() .greaterThanEquals("Session3") .lessThan("Session5").build()).execute(); Assert.assertEquals(20, result.getResult().size()); .withColumnRange( SE_SERIALIZER.buildRange().greaterThan("Session3") .lessThanEquals("Session5").build()) .execute(); Assert.assertEquals(20, result.getResult().size()); .withColumnRange( SE_SERIALIZER.buildRange().greaterThan("Session3") .lessThan("Session5").build()).execute(); Assert.assertEquals(10, result.getResult().size()); .greaterThanEquals(uuids.get(2)) .lessThanEquals(uuids.get(8)) .build()).execute(); .lessThan( TimeUUIDUtils.getTimeUUID(8)) .build()).execute();
@Override public Message peekMessageByKey(String key) throws MessageQueueException { String groupRowKey = getCompositeKey(getName(), key); try { ColumnList<MessageMetadataEntry> columns = keyspace.prepareQuery(keyIndexColumnFamily) .setConsistencyLevel(consistencyLevel) .getRow(groupRowKey) .withColumnRange(metadataSerializer.buildRange() .greaterThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .lessThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .build() ) .execute() .getResult(); for (Column<MessageMetadataEntry> entry : columns) { if (entry.getTtl() != 0) continue; // Return the first one we get. Hmmm... maybe we want to do some validation checks here return peekMessage(entry.getName().getName()); } return null; } catch (NotFoundException e) { return null; } catch (ConnectionException e) { throw new MessageQueueException("Error fetching row " + groupRowKey, e); } }
.greaterThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .lessThanEquals((byte)MessageMetadataEntryType.MessageId.ordinal()) .build()
.greaterThanEquals((byte) MessageQueueEntryType.Lock.ordinal()) .lessThanEquals((byte) MessageQueueEntryType.Lock.ordinal()) .build()
try { ColumnList<MessageMetadataEntry> columns = queue.keyspace.prepareQuery(queue.keyIndexColumnFamily).getRow(groupRowKey).withColumnRange(ShardedDistributedMessageQueue.metadataSerializer.buildRange().greaterThanEquals((byte) MessageMetadataEntryType.MessageId.ordinal()).lessThanEquals((byte) MessageMetadataEntryType.MessageId.ordinal()).build()).execute().getResult(); MessageMetadataEntry mostRecentMessageMetadata = null; long mostRecentTriggerTime = 0;