Author: jbellis
Date: Wed Oct 21 18:25:35 2009
New Revision: 828128

URL: http://svn.apache.org/viewvc?rev=828128&view=rev
Log:
r/m uses of EndPoint(port) constructor; rename EndPoint methods to make porting 
easier; r/m gratuitous uses of getHost
patch by jbellis; reviewed by Brandon Williams for CASSANDRA-498

Added:
    incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/
    
incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/CompactEndPointSerializationHelperTest.java
Modified:
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RowMutationVerbHandler.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/dht/BootStrapper.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/EndPointSnitch.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/CompactEndPointSerializationHelper.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/net/EndPoint.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/UdpConnection.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
    
incubator/cassandra/trunk/test/unit/org/apache/cassandra/client/TestRingCache.java

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
 Wed Oct 21 18:25:35 2009
@@ -184,7 +184,7 @@
     private static void deliverHintsToEndpoint(EndPoint endPoint) throws 
IOException, DigestMismatchException, InvalidRequestException, TimeoutException
     {
         if (logger_.isDebugEnabled())
-          logger_.debug("Started hinted handoff for endPoint " + 
endPoint.getHost());
+          logger_.debug("Started hinted handoff for endPoint " + endPoint);
 
         String targetEPBytes = endPoint.getHost();
         // 1. Scan through all the keys that we need to handoff
@@ -223,7 +223,7 @@
         }
 
         if (logger_.isDebugEnabled())
-          logger_.debug("Finished hinted handoff for endpoint " + 
endPoint.getHost());
+          logger_.debug("Finished hinted handoff for endpoint " + endPoint);
     }
 
     public void scheduleHandoffsFor(final ColumnFamilyStore columnFamilyStore)

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RowMutationVerbHandler.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RowMutationVerbHandler.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RowMutationVerbHandler.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RowMutationVerbHandler.java
 Wed Oct 21 18:25:35 2009
@@ -49,7 +49,7 @@
             byte[] hintedBytes = message.getHeader(RowMutation.HINT);
             if ( hintedBytes != null && hintedBytes.length > 0 )
             {
-               EndPoint hint = EndPoint.fromBytes(hintedBytes);
+               EndPoint hint = EndPoint.getByAddress(hintedBytes);
                 if (logger_.isDebugEnabled())
                   logger_.debug("Adding hint for " + hint);
                 /* add necessary hints to this mutation */

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/dht/BootStrapper.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/dht/BootStrapper.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/dht/BootStrapper.java 
(original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/dht/BootStrapper.java 
Wed Oct 21 18:25:35 2009
@@ -211,7 +211,7 @@
             {
                 EndPoint maxStorageEndpoint = new 
EndPoint(maxEndpoint.getHost(), DatabaseDescriptor.getStoragePort());
                 Token<?> t = getBootstrapTokenFrom(maxStorageEndpoint);
-                logger_.info("Setting token to " + t + " to assume load from " 
+ maxEndpoint.getHost());
+                logger_.info("Setting token to " + t + " to assume load from " 
+ maxEndpoint);
                 ss.updateToken(t);
             }
         }

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/EndPointSnitch.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/EndPointSnitch.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/EndPointSnitch.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/EndPointSnitch.java
 Wed Oct 21 18:25:35 2009
@@ -31,8 +31,8 @@
          * the 3rd octet. If they are the same then the hosts
          * are in the same rack else different racks. 
         */        
-        byte[] ip = getIPAddress(host.getHost());
-        byte[] ip2 = getIPAddress(host2.getHost());
+        byte[] ip = host.getAddress();
+        byte[] ip2 = host2.getAddress();
         
         return ( ip[2] == ip2[2] );
     }
@@ -44,15 +44,9 @@
          * the 2nd octet. If they are the same then the hosts
          * are in the same datacenter else different datacenter. 
         */
-        byte[] ip = getIPAddress(host.getHost());
-        byte[] ip2 = getIPAddress(host2.getHost());
+        byte[] ip = host.getAddress();
+        byte[] ip2 = host2.getAddress();
         
         return ( ip[1] == ip2[1] );
     }
-    
-    private byte[] getIPAddress(String host) throws UnknownHostException
-    {
-        InetAddress ia = InetAddress.getByName(host);         
-        return ia.getAddress();
-    }
 }

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/CompactEndPointSerializationHelper.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/net/CompactEndPointSerializationHelper.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/CompactEndPointSerializationHelper.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/CompactEndPointSerializationHelper.java
 Wed Oct 21 18:25:35 2009
@@ -19,29 +19,18 @@
 package org.apache.cassandra.net;
 
 import java.io.*;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
 
 public class CompactEndPointSerializationHelper
 {
     public static void serialize(EndPoint endPoint, DataOutputStream dos) 
throws IOException
     {        
-        dos.write(EndPoint.toBytes(endPoint));
+        dos.write(endPoint.getAddress());
     }
     
     public static EndPoint deserialize(DataInputStream dis) throws IOException
     {     
         byte[] bytes = new byte[6];
         dis.readFully(bytes, 0, bytes.length);
-        return EndPoint.fromBytes(bytes);       
-    }
-    
-    public static void main(String[] args) throws Throwable
-    {
-        EndPoint ep = new EndPoint(7000);
-        byte[] bytes = EndPoint.toBytes(ep);
-        System.out.println(bytes.length);
-        EndPoint ep2 = EndPoint.fromBytes(bytes);
-        System.out.println(ep2);
+        return EndPoint.getByAddress(bytes);
     }
 }

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/EndPoint.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/net/EndPoint.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/net/EndPoint.java 
(original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/net/EndPoint.java 
Wed Oct 21 18:25:35 2009
@@ -29,11 +29,10 @@
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.log4j.Logger;
 
-public class EndPoint implements Serializable, Comparable<EndPoint>
+public class EndPoint
 {
     // logging and profiling.
     private static Logger logger_ = Logger.getLogger(EndPoint.class);
-    private static final long serialVersionUID = -4962625949179835907L;
     private static Map<CharBuffer, String> hostNames_ = new 
HashMap<CharBuffer, String>();
 
     private String host_;
@@ -48,20 +47,6 @@
         port_ = port;
     }
 
-    // create a local endpoint id
-    public EndPoint(int port)
-    {
-        try
-        {
-            host_ = FBUtilities.getHostAddress();
-        }
-        catch (UnknownHostException e)
-        {
-            throw new RuntimeException(e);
-        }
-        port_ = port;
-    }
-
     public String getHost()
     {
         return host_;
@@ -95,33 +80,22 @@
         return (host_ + port_).hashCode();
     }
 
-    public int compareTo(EndPoint rhs)
-    {
-        return host_.compareTo(rhs.host_);
-    }
-
     public String toString()
     {
         return (host_ + ":" + port_);
     }
 
-    public static EndPoint fromString(String str)
-    {
-        String[] values = str.split(":");
-        return new EndPoint(values[0], Integer.parseInt(values[1]));
-    }
-
-    public static byte[] toBytes(EndPoint ep)
+    public byte[] getAddress()
     {
         ByteBuffer buffer = ByteBuffer.allocate(6);
-        byte[] iaBytes = ep.getInetAddress().getAddress().getAddress();
+        byte[] iaBytes = getInetAddress().getAddress().getAddress();
         buffer.put(iaBytes);
-        buffer.put(MessagingService.toByteArray((short) ep.getPort()));
+        buffer.put(MessagingService.toByteArray((short)getPort()));
         buffer.flip();
         return buffer.array();
     }
 
-    public static EndPoint fromBytes(byte[] bytes)
+    public static EndPoint getByAddress(byte[] bytes)
     {
         ByteBuffer buffer = ByteBuffer.allocate(4);
         System.arraycopy(bytes, 0, buffer.array(), 0, 4);

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/UdpConnection.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/net/UdpConnection.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/UdpConnection.java 
(original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/net/UdpConnection.java 
Wed Oct 21 18:25:35 2009
@@ -56,8 +56,7 @@
     
     public void init(int port) throws IOException
     {
-        // TODO: get TCP port from config and add one.
-        localEndPoint_ = new EndPoint(port);
+        localEndPoint_ = new EndPoint(FBUtilities.getHostAddress(), port);
         socketChannel_ = DatagramChannel.open();
         socketChannel_.socket().bind(localEndPoint_.getInetAddress());
         socketChannel_.socket().setReuseAddress(true);

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
 Wed Oct 21 18:25:35 2009
@@ -81,9 +81,9 @@
             if ( !target.equals(hint) )
                        {
                                Message hintedMessage = 
rm.makeRowMutationMessage();
-                               hintedMessage.addHeader(RowMutation.HINT, 
EndPoint.toBytes(hint) );
+                               hintedMessage.addHeader(RowMutation.HINT, 
hint.getAddress());
                                if (logger.isDebugEnabled())
-                                   logger.debug("Sending the hint of " + 
hint.getHost() + " to " + target.getHost());
+                                   logger.debug("Sending the hint of " + hint 
+ " to " + target);
                                messageMap.put(target, hintedMessage);
                        }
                        else

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
 Wed Oct 21 18:25:35 2009
@@ -38,6 +38,7 @@
 import org.apache.cassandra.tools.MembershipCleanerVerbHandler;
 import org.apache.cassandra.utils.FileUtils;
 import org.apache.cassandra.utils.LogUtil;
+import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.io.SSTableReader;
 
 import org.apache.log4j.Logger;
@@ -161,7 +162,7 @@
     public synchronized void addBootstrapSource(EndPoint s)
     {
         if (logger_.isDebugEnabled())
-            logger_.debug("Added " + s.getHost() + " as a bootstrap source");
+            logger_.debug("Added " + s + " as a bootstrap source");
         bootstrapSet.add(s);
     }
     
@@ -170,7 +171,7 @@
         bootstrapSet.remove(s);
 
         if (logger_.isDebugEnabled())
-            logger_.debug("Removed " + s.getHost() + " as a bootstrap source");
+            logger_.debug("Removed " + s + " as a bootstrap source");
         if (bootstrapSet.isEmpty())
         {
             SystemTable.setBootstrapped();
@@ -251,8 +252,8 @@
     public void start() throws IOException
     {
         storageMetadata_ = SystemTable.initMetadata();
-        tcpAddr_ = new EndPoint(DatabaseDescriptor.getStoragePort());
-        udpAddr_ = new EndPoint(DatabaseDescriptor.getControlPort());
+        tcpAddr_ = new EndPoint(FBUtilities.getHostAddress(), 
DatabaseDescriptor.getStoragePort());
+        udpAddr_ = new EndPoint(FBUtilities.getHostAddress(), 
DatabaseDescriptor.getControlPort());
         isBootstrapMode = DatabaseDescriptor.isAutoBootstrap()
                           && 
!(DatabaseDescriptor.getSeeds().contains(udpAddr_.getHost()) || 
SystemTable.isBootstrapped());
 
@@ -400,7 +401,7 @@
         if (bootstrapState)
         {
             if (logger_.isDebugEnabled())
-                logger_.debug(ep.getHost() + " is in bootstrap state.");
+                logger_.debug(ep + " is in bootstrap state.");
         }
         if (nodeIdState != null)
         {

Modified: 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/client/TestRingCache.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/unit/org/apache/cassandra/client/TestRingCache.java?rev=828128&r1=828127&r2=828128&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/client/TestRingCache.java
 (original)
+++ 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/client/TestRingCache.java
 Wed Oct 21 18:25:35 2009
@@ -67,8 +67,8 @@
             EndPoint endPoints[] = ringCache.getEndPoint(row);
             String hosts="";
             for (int i=0; i<endPoints.length; i++)
-                hosts = hosts + ((i>0) ? "," : "") + endPoints[i].getHost();
-            System.out.println("hosts with key " + row + " : " + hosts + "; 
choose " + endPoints[0].getHost());
+                hosts = hosts + ((i>0) ? "," : "") + endPoints[i];
+            System.out.println("hosts with key " + row + " : " + hosts + "; 
choose " + endPoints[0]);
         
             // now, read the row back directly from the host owning the row 
locally
             setup(endPoints[0].getHost(), endPoints[0].getPort());

Added: 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/CompactEndPointSerializationHelperTest.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/CompactEndPointSerializationHelperTest.java?rev=828128&view=auto
==============================================================================
--- 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/CompactEndPointSerializationHelperTest.java
 (added)
+++ 
incubator/cassandra/trunk/test/unit/org/apache/cassandra/net/CompactEndPointSerializationHelperTest.java
 Wed Oct 21 18:25:35 2009
@@ -0,0 +1,20 @@
+package org.apache.cassandra.net;
+
+import java.net.UnknownHostException;
+
+import org.junit.Test;
+
+import org.apache.cassandra.utils.FBUtilities;
+
+public class CompactEndPointSerializationHelperTest
+{
+    @Test
+    public void testSerialize() throws UnknownHostException
+    {
+        EndPoint ep = new EndPoint(FBUtilities.getHostAddress(), 7000);
+        byte[] bytes = ep.getAddress();
+        System.out.println(bytes.length);
+        EndPoint ep2 = EndPoint.getByAddress(bytes);
+        System.out.println(ep2);
+    }
+}


Reply via email to