本文整理匯總了Java中com.alibaba.cobar.net.BackendConnection類的典型用法代碼示例。如果您正苦於以下問題:Java BackendConnection類的具體用法?Java BackendConnection怎麽用?Java BackendConnection使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
BackendConnection類屬於com.alibaba.cobar.net包,在下文中一共展示了BackendConnection類的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: execute
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
public static void execute(ManagerConnection c) {
ByteBuffer buffer = c.allocate();
buffer = header.write(buffer, c);
for (FieldPacket field : fields) {
buffer = field.write(buffer, c);
}
buffer = eof.write(buffer, c);
byte packetId = eof.packetId;
String charset = c.getCharset();
for (NIOProcessor p : CobarServer.getInstance().getProcessors()) {
for (BackendConnection bc : p.getBackends().values()) {
if (bc != null) {
RowDataPacket row = getRow(bc, charset);
row.packetId = ++packetId;
buffer = row.write(buffer, c);
}
}
}
EOFPacket lastEof = new EOFPacket();
lastEof.packetId = ++packetId;
buffer = lastEof.write(buffer, c);
c.write(buffer);
}
示例2: postConnect
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
protected void postConnect(BackendConnection c, NIOConnector connector) {
c.setPacketHeaderSize(packetHeaderSize);
c.setMaxPacketSize(maxPacketSize);
c.setWriteQueue(new BufferQueue(writeQueueCapcity));
c.setIdleTimeout(idleTimeout);
c.setConnector(connector);
connector.postConnect(c);
}
示例3: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, getPacketLength());
buffer.put(packetId);
buffer.put(command);
buffer = c.writeToBuffer(arg, buffer);
c.write(buffer);
}
示例4: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, getPacketLength());
buffer.put(packetId);
if (seed == null) {
buffer.put((byte) 0);
} else {
BufferUtil.writeWithNull(buffer, seed);
}
c.write(buffer);
}
示例5: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, getPacketLength());
buffer.put(packetId);
BufferUtil.writeUB4(buffer, clientFlags);
BufferUtil.writeUB4(buffer, maxPacketSize);
buffer.put((byte) charsetIndex);
buffer = c.writeToBuffer(FILLER, buffer);
if (user == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
byte[] userData = user.getBytes();
buffer = c.checkWriteBuffer(buffer, userData.length + 1);
BufferUtil.writeWithNull(buffer, userData);
}
if (password == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
buffer = c.checkWriteBuffer(buffer, BufferUtil.getLength(password));
BufferUtil.writeWithLength(buffer, password);
}
if (database == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
byte[] databaseData = database.getBytes();
buffer = c.checkWriteBuffer(buffer, databaseData.length + 1);
BufferUtil.writeWithNull(buffer, databaseData);
}
c.write(buffer);
}
示例6: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
@Override
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, calcPacketSize());
buffer.put(packetId);
buffer.put(command);
BufferUtil.writeLength(buffer, id);
c.write(buffer);
}
示例7: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
@Override
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, calcPacketSize());
buffer.put(packetId);
buffer.put(command);
buffer = c.writeToBuffer(arg, buffer);
c.write(buffer);
}
示例8: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
@Override
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, calcPacketSize());
buffer.put(packetId);
if (seed == null) {
buffer.put((byte) 0);
} else {
BufferUtil.writeWithNull(buffer, seed);
}
c.write(buffer);
}
示例9: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
@Override
public void write(BackendConnection c) {
ByteBuffer buffer = c.allocate();
BufferUtil.writeUB3(buffer, calcPacketSize());
buffer.put(packetId);
BufferUtil.writeUB4(buffer, clientFlags);
BufferUtil.writeUB4(buffer, maxPacketSize);
buffer.put((byte) charsetIndex);
buffer = c.writeToBuffer(FILLER, buffer);
if (user == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
byte[] userData = user.getBytes();
buffer = c.checkWriteBuffer(buffer, userData.length + 1);
BufferUtil.writeWithNull(buffer, userData);
}
if (password == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
buffer = c.checkWriteBuffer(buffer, BufferUtil.getLength(password));
BufferUtil.writeWithLength(buffer, password);
}
if (database == null) {
buffer = c.checkWriteBuffer(buffer, 1);
buffer.put((byte) 0);
} else {
byte[] databaseData = database.getBytes();
buffer = c.checkWriteBuffer(buffer, databaseData.length + 1);
BufferUtil.writeWithNull(buffer, databaseData);
}
c.write(buffer);
}
示例10: write
import com.alibaba.cobar.net.BackendConnection; //導入依賴的package包/類
/**
* 把數據包通過後端連接寫出,一般使用buffer機製來提高寫的吞吐量。
*/
public void write(BackendConnection c) {
throw new UnsupportedOperationException();
}