Browse Source

ZOOKEEPER-3501: unify the method:op2String()

- delete the duplicated method `op2String()` in the `TraceFormatter.java `
- there're 30 ops in the `ZooDefs.OpCode` and they're the same order with the `Request#op2String` for reading
- more details in the [ZOOKEEPER-3501](https://issues.apache.org/jira/browse/ZOOKEEPER-3501)

Author: maoling <maoling199210191@sina.com>

Reviewers: Enrico Olivelli <eolivelli@apache.org>, Norbert Kalmar <nkalmar@apache.org>

Closes #1050 from maoling/ZOOKEEPER-3501
maoling 5 years ago
parent
commit
a179caa668

+ 1 - 1
zookeeper-server/src/main/java/org/apache/zookeeper/server/LogFormatter.java

@@ -104,7 +104,7 @@ public class LogFormatter {
                 + " session 0x" + Long.toHexString(hdr.getClientId())
                 + " cxid 0x" + Long.toHexString(hdr.getCxid())
                 + " zxid 0x" + Long.toHexString(hdr.getZxid())
-                + " " + TraceFormatter.op2String(hdr.getType())
+                + " " + Request.op2String(hdr.getType())
                 + " " + txn);
             if (logStream.readByte("EOR") != 'B') {
                 LOG.error("Last transaction was partial.");

+ 62 - 58
zookeeper-server/src/main/java/org/apache/zookeeper/server/Request.java

@@ -286,64 +286,68 @@ public class Request {
 
     public static String op2String(int op) {
         switch (op) {
-        case OpCode.notification:
-            return "notification";
-        case OpCode.create:
-            return "create";
-        case OpCode.create2:
-            return "create2";
-        case OpCode.createTTL:
-            return "createTtl";
-        case OpCode.createContainer:
-            return "createContainer";
-        case OpCode.setWatches:
-            return "setWatches";
-        case OpCode.delete:
-            return "delete";
-        case OpCode.deleteContainer:
-            return "deleteContainer";
-        case OpCode.exists:
-            return "exists";
-        case OpCode.getData:
-            return "getData";
-        case OpCode.check:
-            return "check";
-        case OpCode.multi:
-            return "multi";
-        case OpCode.multiRead:
-            return "multiRead";
-        case OpCode.setData:
-            return "setData";
-        case OpCode.sync:
-            return "sync:";
-        case OpCode.getACL:
-            return "getACL";
-        case OpCode.setACL:
-            return "setACL";
-        case OpCode.getChildren:
-            return "getChildren";
-        case OpCode.getAllChildrenNumber:
-            return "getAllChildrenNumber";
-        case OpCode.getChildren2:
-            return "getChildren2";
-        case OpCode.getEphemerals:
-            return "getEphemerals";
-        case OpCode.ping:
-            return "ping";
-        case OpCode.createSession:
-            return "createSession";
-        case OpCode.closeSession:
-            return "closeSession";
-        case OpCode.error:
-            return "error";
-        case OpCode.reconfig:
-            return "reconfig";
-        case OpCode.checkWatches:
-            return "checkWatches";
-        case OpCode.removeWatches:
-            return "removeWatches";
-        default:
-            return "unknown " + op;
+            case OpCode.notification:
+                return "notification";
+            case OpCode.create:
+                return "create";
+            case OpCode.delete:
+                return "delete";
+            case OpCode.exists:
+                return "exists";
+            case OpCode.getData:
+                return "getData";
+            case OpCode.setData:
+                return "setData";
+            case OpCode.getACL:
+                return "getACL";
+            case OpCode.setACL:
+                return "setACL";
+            case OpCode.getChildren:
+                return "getChildren";
+            case OpCode.sync:
+                return "sync";
+            case OpCode.ping:
+                return "ping";
+            case OpCode.getChildren2:
+                return "getChildren2";
+            case OpCode.check:
+                return "check";
+            case OpCode.multi:
+                return "multi";
+            case OpCode.create2:
+                return "create2";
+            case OpCode.reconfig:
+                return "reconfig";
+            case OpCode.checkWatches:
+                return "checkWatches";
+            case OpCode.removeWatches:
+                return "removeWatches";
+            case OpCode.createContainer:
+                return "createContainer";
+            case OpCode.deleteContainer:
+                return "deleteContainer";
+            case OpCode.createTTL:
+                return "createTtl";
+            case OpCode.multiRead:
+                return "multiRead";
+            case OpCode.auth:
+                return "auth";
+            case OpCode.setWatches:
+                return "setWatches";
+            case OpCode.sasl:
+                return "sasl";
+            case OpCode.getEphemerals:
+                return "getEphemerals";
+            case OpCode.getAllChildrenNumber:
+                return "getAllChildrenNumber";
+            case OpCode.createSession:
+                return "createSession";
+            case OpCode.closeSession:
+                return "closeSession";
+            case OpCode.error:
+                return "error";
+            default:
+                return "unknown " + op;
         }
     }
 

+ 16 - 77
zookeeper-server/src/main/java/org/apache/zookeeper/server/TraceFormatter.java

@@ -28,73 +28,6 @@ import org.apache.zookeeper.ZooDefs.OpCode;
 
 public class TraceFormatter {
 
-    public static String op2String(int op) {
-        switch (op) {
-        case OpCode.notification:
-            return "notification";
-        case OpCode.create:
-            return "create";
-        case OpCode.create2:
-            return "create2";
-        case OpCode.createTTL:
-            return "createTtl";
-        case OpCode.createContainer:
-            return "createContainer";
-        case OpCode.delete:
-            return "delete";
-        case OpCode.deleteContainer:
-            return "deleteContainer";
-        case OpCode.exists:
-            return "exists";
-        case OpCode.getData:
-            return "getData";
-        case OpCode.setData:
-            return "setData";
-        case OpCode.multi:
-            return "multi";
-        case OpCode.getACL:
-            return "getACL";
-        case OpCode.setACL:
-            return "setACL";
-        case OpCode.getChildren:
-            return "getChildren";
-        case OpCode.getAllChildrenNumber:
-            return "getAllChildrenNumber";
-        case OpCode.getChildren2:
-            return "getChildren2";
-        case OpCode.getEphemerals:
-            return "getEphemerals";
-        case OpCode.ping:
-            return "ping";
-        case OpCode.createSession:
-            return "createSession";
-        case OpCode.closeSession:
-            return "closeSession";
-        case OpCode.error:
-            return "error";
-        case OpCode.reconfig:
-            return "reconfig";
-        case OpCode.check:
-            return "check";
-        case OpCode.sync:
-            return "sync";
-        case OpCode.checkWatches:
-            return "checkWatches";
-        case OpCode.removeWatches:
-            return "removeWatches";
-        case OpCode.auth:
-            return "auth";
-        case OpCode.setWatches:
-            return "setWatches";
-        case OpCode.sasl:
-            return "sasl";
-        case OpCode.multiRead:
-            return "multiRead";
-        default:
-            return "unknown " + op;
-        }
-    }
-
     /**
      * @param args
      * @throws IOException
@@ -130,16 +63,22 @@ public class TraceFormatter {
                     path = new String(b);
                 }
             }
-            System.out.println(
-                DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(new Date(time))
-                + ": " + (char) app
-                + " id=0x" + Long.toHexString(id)
-                + " cxid=" + cxid
-                + " op=" + op2String(type)
-                + " zxid=0x" + Long.toHexString(zxid)
-                + " txnType=" + txnType
-                + " len=" + len
-                + " path=" + path);
+            System.out.println(DateFormat.getDateTimeInstance(DateFormat.SHORT,
+                    DateFormat.LONG).format(new Date(time))
+                    + ": "
+                    + (char) app
+                    + " id=0x"
+                    + Long.toHexString(id)
+                    + " cxid="
+                    + cxid
+                    + " op="
+                    + Request.op2String(type)
+                    + " zxid=0x"
+                    + Long.toHexString(zxid)
+                    + " txnType="
+                    + txnType
+                    + " len="
+                    + len + " path=" + path);
         }
     }
 

+ 4 - 4
zookeeper-server/src/main/java/org/apache/zookeeper/server/persistence/TxnLogToolkit.java

@@ -48,7 +48,7 @@ import org.apache.jute.BinaryInputArchive;
 import org.apache.jute.BinaryOutputArchive;
 import org.apache.jute.Record;
 import org.apache.zookeeper.server.ExitCode;
-import org.apache.zookeeper.server.TraceFormatter;
+import org.apache.zookeeper.server.Request;
 import org.apache.zookeeper.server.util.LogChopper;
 import org.apache.zookeeper.server.util.SerializeUtils;
 import org.apache.zookeeper.txn.CreateContainerTxn;
@@ -291,7 +291,7 @@ public class TxnLogToolkit implements Closeable {
             Long.toHexString(hdr.getClientId()),
             Long.toHexString(hdr.getCxid()),
             Long.toHexString(hdr.getZxid()),
-            TraceFormatter.op2String(hdr.getType()),
+                Request.op2String(hdr.getType()),
             txnStr);
         if (prefix != null && !"".equals(prefix.trim())) {
             System.out.print(prefix + " - ");
@@ -337,9 +337,9 @@ public class TxnLogToolkit implements Closeable {
             for (int i = 0; i < txnList.size(); i++) {
                 Txn t = txnList.get(i);
                 if (i == 0) {
-                    txnData.append(TraceFormatter.op2String(t.getType()) + ":" + checkNullToEmpty(t.getData()));
+                    txnData.append(Request.op2String(t.getType()) + ":" + checkNullToEmpty(t.getData()));
                 } else {
-                    txnData.append(";" + TraceFormatter.op2String(t.getType()) + ":" + checkNullToEmpty(t.getData()));
+                    txnData.append(";" + Request.op2String(t.getType()) + ":" + checkNullToEmpty(t.getData()));
                 }
             }
         } else {

+ 2 - 2
zookeeper-server/src/test/java/org/apache/zookeeper/test/LocalSessionRequestTest.java

@@ -21,7 +21,7 @@ package org.apache.zookeeper.test;
 import static org.junit.Assert.assertFalse;
 import org.apache.zookeeper.ZKTestCase;
 import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.server.TraceFormatter;
+import org.apache.zookeeper.server.Request;
 import org.apache.zookeeper.server.ZKDatabase;
 import org.apache.zookeeper.server.quorum.Leader.Proposal;
 import org.apache.zookeeper.server.quorum.QuorumPeer;
@@ -83,7 +83,7 @@ public class LocalSessionRequestTest extends ZKTestCase {
         ZKDatabase db = peer.getActiveServer().getZKDatabase();
         for (Proposal p : db.getCommittedLog()) {
             assertFalse("Should not see "
-                                       + TraceFormatter.op2String(p.request.type)
+                                       + Request.op2String(p.request.type)
                                        + " request from local session 0x"
                                        + session
                                        + " on the "