use of com.yahoo.fs4.Packet in project vespa by vespa-engine.
the class QueryTestCase method testEncodeQueryPacketWithLabelsConnectivityAndSignificance.
@Test
public void testEncodeQueryPacketWithLabelsConnectivityAndSignificance() {
Query query = new Query();
AndItem and = new AndItem();
WeightedSetItem taggable1 = new WeightedSetItem("field1");
taggable1.setLabel("foo");
WeightedSetItem taggable2 = new WeightedSetItem("field2");
taggable1.setLabel("bar");
and.addItem(taggable1);
and.addItem(taggable2);
WordItem word1 = new WordItem("word1", "field3");
word1.setSignificance(0.37);
WordItem word2 = new WordItem("word1", "field3");
word2.setSignificance(0.81);
word2.setConnectivity(word1, 0.15);
and.addItem(word1);
and.addItem(word2);
query.getModel().getQueryTree().setRoot(and);
query.prepare();
QueryPacket packet = QueryPacket.create(query);
byte[] encoded = packetToBytes(packet);
byte[] correctBuffer = new byte[] { 0, 0, 1, 16, 0, 0, 0, -38, 0, 0, 0, 0, 0, 16, 0, 6, 0, 10, ignored, ignored, ignored, ignored, 0, 0, 0x40, 0x03, 7, 'd', 'e', 'f', 'a', 'u', 'l', 't', 0, 0, 0, 1, 0, 0, 0, 4, 'r', 'a', 'n', 'k', 0, 0, 0, 5, 0, 0, 0, 18, 'v', 'e', 's', 'p', 'a', 46, 'l', 'a', 'b', 'e', 'l', 46, 'b', 'a', 'r', 46, 'i', 'd', 0, 0, 0, 1, '1', 0, 0, 0, 22, 'v', 'e', 's', 'p', 'a', 46, 't', 'e', 'r', 'm', 46, '4', 46, 'c', 'o', 'n', 'n', 'e', 'x', 'i', 't', 'y', 0, 0, 0, 1, '3', 0, 0, 0, 22, 'v', 'e', 's', 'p', 'a', 46, 't', 'e', 'r', 'm', 46, '4', 46, 'c', 'o', 'n', 'n', 'e', 'x', 'i', 't', 'y', 0, 0, 0, 4, '0', 46, '1', '5', 0, 0, 0, 25, 'v', 'e', 's', 'p', 'a', 46, 't', 'e', 'r', 'm', 46, '3', 46, 's', 'i', 'g', 'n', 'i', 'f', 'i', 'c', 'a', 'n', 'c', 'e', 0, 0, 0, 4, '0', 46, '3', '7', 0, 0, 0, 25, 'v', 'e', 's', 'p', 'a', 46, 't', 'e', 'r', 'm', 46, '4', 46, 's', 'i', 'g', 'n', 'i', 'f', 'i', 'c', 'a', 'n', 'c', 'e', 0, 0, 0, 4, '0', 46, '8', '1', 0, 0, 0, 5, 0, 0, 0, '4', 1, 4, 79, 1, 0, 6, 'f', 'i', 'e', 'l', 'd', '1', 79, 2, 0, 6, 'f', 'i', 'e', 'l', 'd', '2', 68, 3, 6, 'f', 'i', 'e', 'l', 'd', '3', 5, 'w', 'o', 'r', 'd', '1', 68, 4, 6, 'f', 'i', 'e', 'l', 'd', '3', 5, 'w', 'o', 'r', 'd', 49 };
assertEqualArrays(correctBuffer, encoded);
}
use of com.yahoo.fs4.Packet in project vespa by vespa-engine.
the class PacketDecoderTestCase method testTooSmallBufferForPacket.
/**
* Test the case where the buffer is too small for the
* packet
*/
@Test
public void testTooSmallBufferForPacket() {
ByteBuffer data = ByteBuffer.allocate(10);
data.put(queryResultPacketData, 0, 10);
data.flip();
try {
PacketDecoder.extractPacket(data);
fail();
} catch (BufferTooSmallException e) {
}
}
use of com.yahoo.fs4.Packet in project vespa by vespa-engine.
the class PacketCacheTestCase method createCacheEntry.
/**
* Creates a 64-byte packet in an array wrapped in a PacketWrapper
*/
private PacketWrapper createCacheEntry(CacheKey key) throws BufferTooSmallException {
ByteBuffer data = ByteBuffer.allocate(length);
data.put(queryResultPacketData);
data.flip();
BasicPacket[] content = new BasicPacket[] { PacketDecoder.extractPacket(data).packet };
return new PacketWrapper(key, content);
}
use of com.yahoo.fs4.Packet in project Citizens2 by CitizensDev.
the class EntityHumanNPC method updatePackets.
private void updatePackets(boolean navigating) {
if (updateCounter++ <= Setting.PACKET_UPDATE_DELAY.asInt())
return;
updateCounter = 0;
Location current = getBukkitEntity().getLocation(packetLocationCache);
Packet<?>[] packets = new Packet[navigating ? EnumItemSlot.values().length : EnumItemSlot.values().length + 1];
if (!navigating) {
packets[5] = new PacketPlayOutEntityHeadRotation(this, (byte) MathHelper.d(NMSImpl.getHeadYaw(this) * 256.0F / 360.0F));
}
int i = 0;
for (EnumItemSlot slot : EnumItemSlot.values()) {
packets[i++] = new PacketPlayOutEntityEquipment(getId(), slot, getEquipment(slot));
}
NMSImpl.sendPacketsNearby(getBukkitEntity(), current, packets);
}
Aggregations