[infinispan-commits] Infinispan SVN: r1961 - in branches/4.1.x: client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol and 2 other directories.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Fri Jul 2 07:21:44 EDT 2010
Author: mircea.markus
Date: 2010-07-02 07:21:44 -0400 (Fri, 02 Jul 2010)
New Revision: 1961
Modified:
branches/4.1.x/cachestore/remote/src/test/java/org/infinispan/loaders/remote/RemoteCacheStoreTest.java
branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodConstants.java
branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsHelper.java
branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsImpl.java
branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/AbstractTransport.java
branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/tcp/TransportObjectFactory.java
Log:
[ISPN-490] - hotrod client:cache the name of the remote cache to avoid String 2 byte[] conversion
Modified: branches/4.1.x/cachestore/remote/src/test/java/org/infinispan/loaders/remote/RemoteCacheStoreTest.java
===================================================================
--- branches/4.1.x/cachestore/remote/src/test/java/org/infinispan/loaders/remote/RemoteCacheStoreTest.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/cachestore/remote/src/test/java/org/infinispan/loaders/remote/RemoteCacheStoreTest.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -2,8 +2,6 @@
import org.infinispan.client.hotrod.TestHelper;
import org.infinispan.config.Configuration;
-import org.infinispan.container.entries.InternalCacheEntry;
-import org.infinispan.container.entries.InternalEntryFactory;
import org.infinispan.eviction.EvictionStrategy;
import org.infinispan.loaders.BaseCacheStoreTest;
import org.infinispan.loaders.CacheLoaderException;
@@ -11,8 +9,6 @@
import org.infinispan.manager.EmbeddedCacheManager;
import org.infinispan.server.hotrod.HotRodServer;
import org.infinispan.test.fwk.TestCacheManagerFactory;
-import org.infinispan.util.logging.Log;
-import org.infinispan.util.logging.LogFactory;
import org.testng.annotations.AfterTest;
import org.testng.annotations.Test;
Modified: branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodConstants.java
===================================================================
--- branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodConstants.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodConstants.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -1,5 +1,7 @@
package org.infinispan.client.hotrod.impl.protocol;
+import java.nio.charset.Charset;
+
/**
* Defines constants defined by Hotrod specifications.
*
@@ -58,4 +60,5 @@
public static final byte CLIENT_INTELLIGENCE_BASIC = 0x01;
public static final byte CLIENT_INTELLIGENCE_TOPOLOGY_AWARE = 0x02;
public static final byte CLIENT_INTELLIGENCE_HASH_DISTRIBUTION_AWARE = 0x03;
+ Charset STRING_CHARSET = Charset.forName("UTF-8");
}
Modified: branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsHelper.java
===================================================================
--- branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsHelper.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsHelper.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -24,13 +24,13 @@
static final AtomicLong MSG_ID = new AtomicLong();
final static byte CLIENT_INTELLIGENCE = HotRodConstants.CLIENT_INTELLIGENCE_HASH_DISTRIBUTION_AWARE;
- public static long writeHeader(Transport transport, short operationCode, String cacheName, AtomicInteger topologyId, Flag... flags) {
+ public static long writeHeader(Transport transport, short operationCode, byte[] cacheName, AtomicInteger topologyId, Flag... flags) {
transport.writeByte(HotRodConstants.REQUEST_MAGIC);
long messageId = MSG_ID.incrementAndGet();
transport.writeVLong(messageId);
transport.writeByte(HotRodConstants.HOTROD_VERSION);
transport.writeByte(operationCode);
- transport.writeString(cacheName);
+ transport.writeArray(cacheName);
int flagInt = 0;
if (flags != null) {
Modified: branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsImpl.java
===================================================================
--- branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsImpl.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/protocol/HotRodOperationsImpl.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -23,12 +23,12 @@
private static Log log = LogFactory.getLog(HotRodOperationsImpl.class);
- private final String cacheName;
+ private final byte[] cacheName;
private TransportFactory transportFactory;
private final AtomicInteger topologyId;
public HotRodOperationsImpl(String cacheName, TransportFactory transportFactory, AtomicInteger topologyId) {
- this.cacheName = cacheName;
+ this.cacheName = cacheName.getBytes(STRING_CHARSET);
this.transportFactory = transportFactory;
this.topologyId = topologyId;
}
Modified: branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/AbstractTransport.java
===================================================================
--- branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/AbstractTransport.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/AbstractTransport.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -1,10 +1,9 @@
package org.infinispan.client.hotrod.impl.transport;
+import org.infinispan.client.hotrod.impl.protocol.HotRodConstants;
import org.infinispan.util.logging.Log;
import org.infinispan.util.logging.LogFactory;
-import java.nio.charset.Charset;
-
/**
* Support class for transport implementations.
*
@@ -15,8 +14,6 @@
private static Log log = LogFactory.getLog(AbstractTransport.class);
- private static final Charset CHARSET = Charset.forName("UTF-8");
-
private final TransportFactory transportFactory;
protected AbstractTransport(TransportFactory transportFactory) {
@@ -31,7 +28,7 @@
@Override
public String readString() {
byte[] strContent = readArray();
- String readString = new String(strContent, CHARSET);
+ String readString = new String(strContent, HotRodConstants.STRING_CHARSET);
if (log.isTraceEnabled()) {
log.trace("Read string is: " + readString);
}
@@ -83,7 +80,7 @@
@Override
public void writeString(String string) {
if (!string.isEmpty()) {
- writeArray(string.getBytes(CHARSET));
+ writeArray(string.getBytes(HotRodConstants.STRING_CHARSET));
} else {
writeVInt(0);
}
Modified: branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/tcp/TransportObjectFactory.java
===================================================================
--- branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/tcp/TransportObjectFactory.java 2010-07-02 11:00:47 UTC (rev 1960)
+++ branches/4.1.x/client/hotrod-client/src/main/java/org/infinispan/client/hotrod/impl/transport/tcp/TransportObjectFactory.java 2010-07-02 11:21:44 UTC (rev 1961)
@@ -19,6 +19,7 @@
private static final Log log = LogFactory.getLog(TransportObjectFactory.class);
private final TcpTransportFactory tcpTransportFactory;
private final AtomicInteger topologyId;
+ private static final byte[] DEFAULT_CACHE_NAME_BYTES = new byte[]{};
public TransportObjectFactory(TcpTransportFactory tcpTransportFactory, AtomicInteger topologyId) {
this.tcpTransportFactory = tcpTransportFactory;
@@ -45,7 +46,7 @@
if (log.isTraceEnabled()) {
log.trace("About to validate(ping) connection to server " + key + ". TcpTransport is " + transport);
}
- long messageId = HotRodOperationsHelper.writeHeader(transport, HotRodConstants.PING_REQUEST, "", topologyId);
+ long messageId = HotRodOperationsHelper.writeHeader(transport, HotRodConstants.PING_REQUEST, DEFAULT_CACHE_NAME_BYTES, topologyId);
short respStatus = HotRodOperationsHelper.readHeaderAndValidate(transport, messageId, HotRodConstants.PING_RESPONSE, topologyId);
if (respStatus == HotRodConstants.NO_ERROR_STATUS) {
if (log.isTraceEnabled())
More information about the infinispan-commits
mailing list