diff --git a/src/main/java/com/profiler/config/TomcatProfilerConfig.java b/src/main/java/com/profiler/config/TomcatProfilerConfig.java index b56738060..ec286ce85 100644 --- a/src/main/java/com/profiler/config/TomcatProfilerConfig.java +++ b/src/main/java/com/profiler/config/TomcatProfilerConfig.java @@ -15,6 +15,9 @@ public class TomcatProfilerConfig { public static String SERVER_IP = "127.0.0.1"; + // TODO 앞으로 공통으로 사용할 port가 필요함. 근데 tcp, udp 혼용사용하면 따로 port를 열어야 되는거 아닌지. + // 일단 9995로 하자. + public static int DEFUALT_PORT = 9995; public static int AGENT_TCP_LISTEN_PORT = 9990; public static int SERVER_TCP_LISTEN_PORT = 9991; public static int REQUEST_TRANSACTION_DATA_LISTEN_PORT = 9995; diff --git a/src/main/java/com/profiler/util/HeaderTBaseDeserializer.java b/src/main/java/com/profiler/util/HeaderTBaseDeserializer.java index 924869c50..e0c17ccab 100644 --- a/src/main/java/com/profiler/util/HeaderTBaseDeserializer.java +++ b/src/main/java/com/profiler/util/HeaderTBaseDeserializer.java @@ -3,13 +3,9 @@ package com.profiler.util; import com.profiler.dto.Header; import org.apache.thrift.TBase; import org.apache.thrift.TException; -import org.apache.thrift.TFieldIdEnum; import org.apache.thrift.protocol.*; import org.apache.thrift.transport.TMemoryInputTransport; -import org.apache.thrift.transport.TTransportException; -import java.io.UnsupportedEncodingException; -import java.nio.ByteBuffer; public class HeaderTBaseDeserializer { private final TProtocol protocol_; @@ -36,15 +32,15 @@ public class HeaderTBaseDeserializer { /** * Deserialize the Thrift object from a byte array. * - * @param base The object to read into + * @param locator The object to read into * @param bytes The array to read from */ - public TBase deserialize(TBaseSelector selector, byte[] bytes) throws TException { + public TBase deserialize(TBaseLocator locator, byte[] bytes) throws TException { try { trans_.reset(bytes); Header header = readHeader(); validate(header); - TBase base = selector.getSelect(header); + TBase base = locator.lookup(header); base.read(protocol_); return base; } finally { diff --git a/src/main/java/com/profiler/util/TBaseSelector.java b/src/main/java/com/profiler/util/TBaseLocator.java similarity index 55% rename from src/main/java/com/profiler/util/TBaseSelector.java rename to src/main/java/com/profiler/util/TBaseLocator.java index 687675895..cc44b0942 100644 --- a/src/main/java/com/profiler/util/TBaseSelector.java +++ b/src/main/java/com/profiler/util/TBaseLocator.java @@ -3,6 +3,6 @@ package com.profiler.util; import com.profiler.dto.Header; import org.apache.thrift.TBase; -public interface TBaseSelector { - TBase getSelect(Header header); +public interface TBaseLocator { + TBase lookup(Header header); } diff --git a/src/test/java/com/profiler/util/HeaderTBaseSerializerTest.java b/src/test/java/com/profiler/util/HeaderTBaseSerializerTest.java index 53fe78c83..e880d896b 100644 --- a/src/test/java/com/profiler/util/HeaderTBaseSerializerTest.java +++ b/src/test/java/com/profiler/util/HeaderTBaseSerializerTest.java @@ -22,16 +22,17 @@ public class HeaderTBaseSerializerTest { dump(serialize); HeaderTBaseDeserializer deserializer = new HeaderTBaseDeserializer(); - TBaseSelector tBaseSelector = new TBaseSelector() { + // TODO type을 어떻게 class와 쉽게 매칭시킬수 있는 클래스 구현 필요. + TBaseLocator tBaseLocator = new TBaseLocator() { @Override - public TBase getSelect(Header header) { + public TBase lookup(Header header) { if(header.getType() == 10) { return new JVMInfoThriftDTO(); } throw new IllegalArgumentException("type not found:" + header.getType()); } }; - TBase deserialize = deserializer.deserialize(tBaseSelector, serialize); + TBase deserialize = deserializer.deserialize(tBaseLocator, serialize); logger.info("deserialize:" + deserialize.getClass()); }