You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by yu...@apache.org on 2016/12/28 09:14:09 UTC

[18/99] [abbrv] [partial] incubator-rocketmq git commit: ROCKETMQ-18 Rename package name from com.alibaba to org.apache

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/UtilAll.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/UtilAll.java b/common/src/main/java/com/alibaba/rocketmq/common/UtilAll.java
deleted file mode 100644
index 4429e3d..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/UtilAll.java
+++ /dev/null
@@ -1,525 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.alibaba.rocketmq.common;
-
-import com.alibaba.rocketmq.remoting.common.RemotingHelper;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.IOException;
-import java.lang.management.ManagementFactory;
-import java.lang.management.RuntimeMXBean;
-import java.net.Inet4Address;
-import java.net.InetAddress;
-import java.net.NetworkInterface;
-import java.text.NumberFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-import java.util.zip.CRC32;
-import java.util.zip.DeflaterOutputStream;
-import java.util.zip.InflaterInputStream;
-
-
-/**
- * @author shijia.wxr
- */
-public class UtilAll {
-    public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
-    public static final String YYYY_MM_DD_HH_MM_SS_SSS = "yyyy-MM-dd#HH:mm:ss:SSS";
-    public static final String YYYY_MMDD_HHMMSS = "yyyyMMddHHmmss";
-
-
-    public static int getPid() {
-        RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
-        String name = runtime.getName(); // format: "pid@hostname"
-        try {
-            return Integer.parseInt(name.substring(0, name.indexOf('@')));
-        } catch (Exception e) {
-            return -1;
-        }
-    }
-
-    public static String currentStackTrace() {
-        StringBuilder sb = new StringBuilder();
-        StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
-        for (StackTraceElement ste : stackTrace) {
-            sb.append("\n\t");
-            sb.append(ste.toString());
-        }
-
-        return sb.toString();
-    }
-
-    public static String offset2FileName(final long offset) {
-        final NumberFormat nf = NumberFormat.getInstance();
-        nf.setMinimumIntegerDigits(20);
-        nf.setMaximumFractionDigits(0);
-        nf.setGroupingUsed(false);
-        return nf.format(offset);
-    }
-
-    public static long computeEclipseTimeMilliseconds(final long beginTime) {
-        return System.currentTimeMillis() - beginTime;
-    }
-
-
-    public static boolean isItTimeToDo(final String when) {
-        String[] whiles = when.split(";");
-        if (whiles != null && whiles.length > 0) {
-            Calendar now = Calendar.getInstance();
-            for (String w : whiles) {
-                int nowHour = Integer.parseInt(w);
-                if (nowHour == now.get(Calendar.HOUR_OF_DAY)) {
-                    return true;
-                }
-            }
-        }
-
-        return false;
-    }
-
-
-    public static String timeMillisToHumanString() {
-        return timeMillisToHumanString(System.currentTimeMillis());
-    }
-
-
-    public static String timeMillisToHumanString(final long t) {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(t);
-        return String.format("%04d%02d%02d%02d%02d%02d%03d", cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1,
-                cal.get(Calendar.DAY_OF_MONTH), cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND),
-                cal.get(Calendar.MILLISECOND));
-    }
-
-
-    public static long computNextMorningTimeMillis() {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(System.currentTimeMillis());
-        cal.add(Calendar.DAY_OF_MONTH, 1);
-        cal.set(Calendar.HOUR_OF_DAY, 0);
-        cal.set(Calendar.MINUTE, 0);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-
-        return cal.getTimeInMillis();
-    }
-
-
-    public static long computNextMinutesTimeMillis() {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(System.currentTimeMillis());
-        cal.add(Calendar.DAY_OF_MONTH, 0);
-        cal.add(Calendar.HOUR_OF_DAY, 0);
-        cal.add(Calendar.MINUTE, 1);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-
-        return cal.getTimeInMillis();
-    }
-
-
-    public static long computNextHourTimeMillis() {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(System.currentTimeMillis());
-        cal.add(Calendar.DAY_OF_MONTH, 0);
-        cal.add(Calendar.HOUR_OF_DAY, 1);
-        cal.set(Calendar.MINUTE, 0);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-
-        return cal.getTimeInMillis();
-    }
-
-
-    public static long computNextHalfHourTimeMillis() {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(System.currentTimeMillis());
-        cal.add(Calendar.DAY_OF_MONTH, 0);
-        cal.add(Calendar.HOUR_OF_DAY, 1);
-        cal.set(Calendar.MINUTE, 30);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-
-        return cal.getTimeInMillis();
-    }
-
-
-    public static String timeMillisToHumanString2(final long t) {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(t);
-        return String.format("%04d-%02d-%02d %02d:%02d:%02d,%03d",
-                cal.get(Calendar.YEAR),
-                cal.get(Calendar.MONTH) + 1,
-                cal.get(Calendar.DAY_OF_MONTH),
-                cal.get(Calendar.HOUR_OF_DAY),
-                cal.get(Calendar.MINUTE),
-                cal.get(Calendar.SECOND),
-                cal.get(Calendar.MILLISECOND));
-    }
-
-
-    public static String timeMillisToHumanString3(final long t) {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(t);
-        return String.format("%04d%02d%02d%02d%02d%02d",
-                cal.get(Calendar.YEAR),
-                cal.get(Calendar.MONTH) + 1,
-                cal.get(Calendar.DAY_OF_MONTH),
-                cal.get(Calendar.HOUR_OF_DAY),
-                cal.get(Calendar.MINUTE),
-                cal.get(Calendar.SECOND));
-    }
-
-
-    public static double getDiskPartitionSpaceUsedPercent(final String path) {
-        if (null == path || path.isEmpty())
-            return -1;
-
-        try {
-            File file = new File(path);
-            if (!file.exists()) {
-                boolean result = file.mkdirs();
-                if (!result) {
-                }
-            }
-
-            long totalSpace = file.getTotalSpace();
-            long freeSpace = file.getFreeSpace();
-            long usedSpace = totalSpace - freeSpace;
-            if (totalSpace > 0) {
-                return usedSpace / (double) totalSpace;
-            }
-        } catch (Exception e) {
-            return -1;
-        }
-
-        return -1;
-    }
-
-
-    public static final int crc32(byte[] array) {
-        if (array != null) {
-            return crc32(array, 0, array.length);
-        }
-
-        return 0;
-    }
-
-
-    public static final int crc32(byte[] array, int offset, int length) {
-        CRC32 crc32 = new CRC32();
-        crc32.update(array, offset, length);
-        return (int) (crc32.getValue() & 0x7FFFFFFF);
-    }
-
-    final static char[] HEX_ARRAY = "0123456789ABCDEF".toCharArray();
-
-    public static String bytes2string(byte[] src) {
-        char[] hexChars = new char[src.length * 2];
-        for (int j = 0; j < src.length; j++) {
-            int v = src[j] & 0xFF;
-            hexChars[j * 2] = HEX_ARRAY[v >>> 4];
-            hexChars[j * 2 + 1] = HEX_ARRAY[v & 0x0F];
-        }
-        return new String(hexChars);
-    }
-
-    public static byte[] string2bytes(String hexString) {
-        if (hexString == null || hexString.equals("")) {
-            return null;
-        }
-        hexString = hexString.toUpperCase();
-        int length = hexString.length() / 2;
-        char[] hexChars = hexString.toCharArray();
-        byte[] d = new byte[length];
-        for (int i = 0; i < length; i++) {
-            int pos = i * 2;
-            d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));
-        }
-        return d;
-    }
-
-
-    private static byte charToByte(char c) {
-        return (byte) "0123456789ABCDEF".indexOf(c);
-    }
-
-
-    public static byte[] uncompress(final byte[] src) throws IOException {
-        byte[] result = src;
-        byte[] uncompressData = new byte[src.length];
-        ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(src);
-        InflaterInputStream inflaterInputStream = new InflaterInputStream(byteArrayInputStream);
-        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(src.length);
-
-        try {
-            while (true) {
-                int len = inflaterInputStream.read(uncompressData, 0, uncompressData.length);
-                if (len <= 0) {
-                    break;
-                }
-                byteArrayOutputStream.write(uncompressData, 0, len);
-            }
-            byteArrayOutputStream.flush();
-            result = byteArrayOutputStream.toByteArray();
-        } catch (IOException e) {
-            throw e;
-        } finally {
-            try {
-                byteArrayInputStream.close();
-            } catch (IOException e) {
-            }
-            try {
-                inflaterInputStream.close();
-            } catch (IOException e) {
-            }
-            try {
-                byteArrayOutputStream.close();
-            } catch (IOException e) {
-            }
-        }
-
-        return result;
-    }
-
-
-    public static byte[] compress(final byte[] src, final int level) throws IOException {
-        byte[] result = src;
-        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(src.length);
-        java.util.zip.Deflater defeater = new java.util.zip.Deflater(level);
-        DeflaterOutputStream deflaterOutputStream = new DeflaterOutputStream(byteArrayOutputStream, defeater);
-        try {
-            deflaterOutputStream.write(src);
-            deflaterOutputStream.finish();
-            deflaterOutputStream.close();
-            result = byteArrayOutputStream.toByteArray();
-        } catch (IOException e) {
-            defeater.end();
-            throw e;
-        } finally {
-            try {
-                byteArrayOutputStream.close();
-            } catch (IOException ignored) {
-            }
-
-            defeater.end();
-        }
-
-        return result;
-    }
-
-
-    public static int asInt(String str, int defaultValue) {
-        try {
-            return Integer.parseInt(str);
-        } catch (Exception e) {
-            return defaultValue;
-        }
-    }
-
-
-    public static long asLong(String str, long defaultValue) {
-        try {
-            return Long.parseLong(str);
-        } catch (Exception e) {
-            return defaultValue;
-        }
-    }
-
-
-    public static String formatDate(Date date, String pattern) {
-        SimpleDateFormat df = new SimpleDateFormat(pattern);
-        return df.format(date);
-    }
-
-
-    public static Date parseDate(String date, String pattern) {
-        SimpleDateFormat df = new SimpleDateFormat(pattern);
-        try {
-            return df.parse(date);
-        } catch (ParseException e) {
-            return null;
-        }
-    }
-
-
-    public static String responseCode2String(final int code) {
-        return Integer.toString(code);
-    }
-
-
-    public static String frontStringAtLeast(final String str, final int size) {
-        if (str != null) {
-            if (str.length() > size) {
-                return str.substring(0, size);
-            }
-        }
-
-        return str;
-    }
-
-
-    public static boolean isBlank(String str) {
-        int strLen;
-        if (str == null || (strLen = str.length()) == 0) {
-            return true;
-        }
-        for (int i = 0; i < strLen; i++) {
-            if (!Character.isWhitespace(str.charAt(i))) {
-                return false;
-            }
-        }
-        return true;
-    }
-
-
-    public static String jstack() {
-        return jstack(Thread.getAllStackTraces());
-    }
-
-
-    public static String jstack(Map<Thread, StackTraceElement[]> map) {
-        StringBuilder result = new StringBuilder();
-        try {
-            Iterator<Map.Entry<Thread, StackTraceElement[]>> ite = map.entrySet().iterator();
-            while (ite.hasNext()) {
-                Map.Entry<Thread, StackTraceElement[]> entry = ite.next();
-                StackTraceElement[] elements = entry.getValue();
-                Thread thread = entry.getKey();
-                if (elements != null && elements.length > 0) {
-                    String threadName = entry.getKey().getName();
-                    result.append(String.format("%-40sTID: %d STATE: %s%n", threadName, thread.getId(), thread.getState()));
-                    for (StackTraceElement el : elements) {
-                        result.append(String.format("%-40s%s%n", threadName, el.toString()));
-                    }
-                    result.append("\n");
-                }
-            }
-        } catch (Throwable e) {
-            result.append(RemotingHelper.exceptionSimpleDesc(e));
-        }
-
-        return result.toString();
-    }
-
-    public static boolean isInternalIP(byte[] ip) {
-        if (ip.length != 4) {
-            throw new RuntimeException("illegal ipv4 bytes");
-        }
-
-
-        //10.0.0.0~10.255.255.255
-        //172.16.0.0~172.31.255.255
-        //192.168.0.0~192.168.255.255
-        if (ip[0] == (byte) 10) {
-
-            return true;
-        } else if (ip[0] == (byte) 172) {
-            if (ip[1] >= (byte) 16 && ip[1] <= (byte) 31) {
-                return true;
-            }
-        } else if (ip[0] == (byte) 192) {
-            if (ip[1] == (byte) 168) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private static boolean ipCheck(byte[] ip) {
-        if (ip.length != 4) {
-            throw new RuntimeException("illegal ipv4 bytes");
-        }
-
-//        if (ip[0] == (byte)30 && ip[1] == (byte)10 && ip[2] == (byte)163 && ip[3] == (byte)120) {
-//        }
-
-
-        if (ip[0] >= (byte) 1 && ip[0] <= (byte) 126) {
-            if (ip[1] == (byte) 1 && ip[2] == (byte) 1 && ip[3] == (byte) 1) {
-                return false;
-            }
-            if (ip[1] == (byte) 0 && ip[2] == (byte) 0 && ip[3] == (byte) 0) {
-                return false;
-            }
-            return true;
-        } else if (ip[0] >= (byte) 128 && ip[0] <= (byte) 191) {
-            if (ip[2] == (byte) 1 && ip[3] == (byte) 1) {
-                return false;
-            }
-            if (ip[2] == (byte) 0 && ip[3] == (byte) 0) {
-                return false;
-            }
-            return true;
-        } else if (ip[0] >= (byte) 192 && ip[0] <= (byte) 223) {
-            if (ip[3] == (byte) 1) {
-                return false;
-            }
-            if (ip[3] == (byte) 0) {
-                return false;
-            }
-            return true;
-        }
-        return false;
-    }
-
-    public static String ipToIPv4Str(byte[] ip) {
-        if (ip.length != 4) {
-            return null;
-        }
-        return new StringBuilder().append(ip[0] & 0xFF).append(".").append(
-                ip[1] & 0xFF).append(".").append(ip[2] & 0xFF)
-                .append(".").append(ip[3] & 0xFF).toString();
-    }
-
-    public static byte[] getIP() {
-        try {
-            Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces();
-            InetAddress ip = null;
-            byte[] internalIP = null;
-            while (allNetInterfaces.hasMoreElements()) {
-                NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
-                Enumeration addresses = netInterface.getInetAddresses();
-                while (addresses.hasMoreElements()) {
-                    ip = (InetAddress) addresses.nextElement();
-                    if (ip != null && ip instanceof Inet4Address) {
-                        byte[] ipByte = ip.getAddress();
-                        if (ipByte.length == 4) {
-                            if (ipCheck(ipByte)) {
-                                if (!isInternalIP(ipByte)) {
-                                    return ipByte;
-                                } else if (internalIP == null) {
-                                    internalIP = ipByte;
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-            if (internalIP != null) {
-                return internalIP;
-            } else {
-                throw new RuntimeException("Can not get local ip");
-            }
-        } catch (Exception e) {
-            throw new RuntimeException("Can not get local ip", e);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/admin/ConsumeStats.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/admin/ConsumeStats.java b/common/src/main/java/com/alibaba/rocketmq/common/admin/ConsumeStats.java
deleted file mode 100644
index d8c9311..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/admin/ConsumeStats.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.admin;
-
-import com.alibaba.rocketmq.common.message.MessageQueue;
-import com.alibaba.rocketmq.remoting.protocol.RemotingSerializable;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map.Entry;
-
-
-/**
- *
- * @author shijia.wxr
- *
- */
-public class ConsumeStats extends RemotingSerializable {
-    private HashMap<MessageQueue, OffsetWrapper> offsetTable = new HashMap<MessageQueue, OffsetWrapper>();
-    private double consumeTps = 0;
-
-
-    public long computeTotalDiff() {
-        long diffTotal = 0L;
-
-        Iterator<Entry<MessageQueue, OffsetWrapper>> it = this.offsetTable.entrySet().iterator();
-        while (it.hasNext()) {
-            Entry<MessageQueue, OffsetWrapper> next = it.next();
-            long diff = next.getValue().getBrokerOffset() - next.getValue().getConsumerOffset();
-            diffTotal += diff;
-        }
-
-        return diffTotal;
-    }
-
-
-    public HashMap<MessageQueue, OffsetWrapper> getOffsetTable() {
-        return offsetTable;
-    }
-
-
-    public void setOffsetTable(HashMap<MessageQueue, OffsetWrapper> offsetTable) {
-        this.offsetTable = offsetTable;
-    }
-
-    public double getConsumeTps() {
-        return consumeTps;
-    }
-
-    public void setConsumeTps(double consumeTps) {
-        this.consumeTps = consumeTps;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/admin/OffsetWrapper.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/admin/OffsetWrapper.java b/common/src/main/java/com/alibaba/rocketmq/common/admin/OffsetWrapper.java
deleted file mode 100644
index 07785c2..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/admin/OffsetWrapper.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.admin;
-
-/**
- *
- * @author shijia.wxr
- *
- */
-public class OffsetWrapper {
-    private long brokerOffset;
-    private long consumerOffset;
-
-    private long lastTimestamp;
-
-
-    public long getBrokerOffset() {
-        return brokerOffset;
-    }
-
-
-    public void setBrokerOffset(long brokerOffset) {
-        this.brokerOffset = brokerOffset;
-    }
-
-
-    public long getConsumerOffset() {
-        return consumerOffset;
-    }
-
-
-    public void setConsumerOffset(long consumerOffset) {
-        this.consumerOffset = consumerOffset;
-    }
-
-
-    public long getLastTimestamp() {
-        return lastTimestamp;
-    }
-
-
-    public void setLastTimestamp(long lastTimestamp) {
-        this.lastTimestamp = lastTimestamp;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/admin/RollbackStats.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/admin/RollbackStats.java b/common/src/main/java/com/alibaba/rocketmq/common/admin/RollbackStats.java
deleted file mode 100644
index 03d94a2..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/admin/RollbackStats.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.admin;
-
-/**
- *
- * @author manhong.yqd
- */
-public class RollbackStats {
-    private String brokerName;
-    private long queueId;
-    private long brokerOffset;
-    private long consumerOffset;
-    private long timestampOffset;
-    private long rollbackOffset;
-
-
-    public String getBrokerName() {
-        return brokerName;
-    }
-
-
-    public void setBrokerName(String brokerName) {
-        this.brokerName = brokerName;
-    }
-
-
-    public long getQueueId() {
-        return queueId;
-    }
-
-
-    public void setQueueId(long queueId) {
-        this.queueId = queueId;
-    }
-
-
-    public long getBrokerOffset() {
-        return brokerOffset;
-    }
-
-
-    public void setBrokerOffset(long brokerOffset) {
-        this.brokerOffset = brokerOffset;
-    }
-
-
-    public long getConsumerOffset() {
-        return consumerOffset;
-    }
-
-
-    public void setConsumerOffset(long consumerOffset) {
-        this.consumerOffset = consumerOffset;
-    }
-
-
-    public long getTimestampOffset() {
-        return timestampOffset;
-    }
-
-
-    public void setTimestampOffset(long timestampOffset) {
-        this.timestampOffset = timestampOffset;
-    }
-
-
-    public long getRollbackOffset() {
-        return rollbackOffset;
-    }
-
-
-    public void setRollbackOffset(long rollbackOffset) {
-        this.rollbackOffset = rollbackOffset;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicOffset.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicOffset.java b/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicOffset.java
deleted file mode 100644
index 076d6eb..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicOffset.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.admin;
-
-/**
- *
- * @author shijia.wxr
- *
- */
-public class TopicOffset {
-    private long minOffset;
-    private long maxOffset;
-    private long lastUpdateTimestamp;
-
-
-    public long getMinOffset() {
-        return minOffset;
-    }
-
-
-    public void setMinOffset(long minOffset) {
-        this.minOffset = minOffset;
-    }
-
-
-    public long getMaxOffset() {
-        return maxOffset;
-    }
-
-
-    public void setMaxOffset(long maxOffset) {
-        this.maxOffset = maxOffset;
-    }
-
-
-    public long getLastUpdateTimestamp() {
-        return lastUpdateTimestamp;
-    }
-
-
-    public void setLastUpdateTimestamp(long lastUpdateTimestamp) {
-        this.lastUpdateTimestamp = lastUpdateTimestamp;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicStatsTable.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicStatsTable.java b/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicStatsTable.java
deleted file mode 100644
index 12d1d4b..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/admin/TopicStatsTable.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.admin;
-
-import com.alibaba.rocketmq.common.message.MessageQueue;
-import com.alibaba.rocketmq.remoting.protocol.RemotingSerializable;
-
-import java.util.HashMap;
-
-
-/**
- *
- * @author shijia.wxr
- *
- */
-public class TopicStatsTable extends RemotingSerializable {
-    private HashMap<MessageQueue, TopicOffset> offsetTable = new HashMap<MessageQueue, TopicOffset>();
-
-
-    public HashMap<MessageQueue, TopicOffset> getOffsetTable() {
-        return offsetTable;
-    }
-
-
-    public void setOffsetTable(HashMap<MessageQueue, TopicOffset> offsetTable) {
-        this.offsetTable = offsetTable;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/annotation/ImportantField.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/annotation/ImportantField.java b/common/src/main/java/com/alibaba/rocketmq/common/annotation/ImportantField.java
deleted file mode 100644
index fe0cb12..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/annotation/ImportantField.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.alibaba.rocketmq.common.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE})
-public @interface ImportantField {
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/constant/DBMsgConstants.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/constant/DBMsgConstants.java b/common/src/main/java/com/alibaba/rocketmq/common/constant/DBMsgConstants.java
deleted file mode 100644
index 54bc04d..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/constant/DBMsgConstants.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.constant;
-
-public class DBMsgConstants {
-    public static final int MAX_BODY_SIZE = 64 * 1024 * 1204; //64KB
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/constant/LoggerName.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/constant/LoggerName.java b/common/src/main/java/com/alibaba/rocketmq/common/constant/LoggerName.java
deleted file mode 100644
index 9175669..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/constant/LoggerName.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.constant;
-
-/**
- * @author shijia.wxr
- */
-public class LoggerName {
-    public static final String FILTERSRV_LOGGER_NAME = "RocketmqFiltersrv";
-    public static final String NAMESRV_LOGGER_NAME = "RocketmqNamesrv";
-    public static final String BROKER_LOGGER_NAME = "RocketmqBroker";
-    public static final String CLIENT_LOGGER_NAME = "RocketmqClient";
-    public static final String TOOLS_LOGGER_NAME = "RocketmqTools";
-    public static final String COMMON_LOGGER_NAME = "RocketmqCommon";
-    public static final String STORE_LOGGER_NAME = "RocketmqStore";
-    public static final String STORE_ERROR_LOGGER_NAME = "RocketmqStoreError";
-    public static final String TRANSACTION_LOGGER_NAME = "RocketmqTransaction";
-    public static final String REBALANCE_LOCK_LOGGER_NAME = "RocketmqRebalanceLock";
-    public static final String ROCKETMQ_STATS_LOGGER_NAME = "RocketmqStats";
-    public static final String COMMERCIAL_LOGGER_NAME = "RocketmqCommercial";
-    public static final String FLOW_CONTROL_LOGGER_NAME = "RocketmqFlowControl";
-    public static final String ROCKETMQ_AUTHORIZE_LOGGER_NAME = "RocketmqAuthorize";
-    public static final String DUPLICATION_LOGGER_NAME = "RocketmqDuplication";
-    public static final String PROTECTION_LOGGER_NAME = "RocketmqProtection";
-    public static final String WATER_MARK_LOGGER_NAME = "RocketmqWaterMark";
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/constant/PermName.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/constant/PermName.java b/common/src/main/java/com/alibaba/rocketmq/common/constant/PermName.java
deleted file mode 100644
index 95c2510..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/constant/PermName.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.constant;
-
-/**
- * @author shijia.wxr
- */
-public class PermName {
-    public static final int PERM_PRIORITY = 0x1 << 3;
-    public static final int PERM_READ = 0x1 << 2;
-    public static final int PERM_WRITE = 0x1 << 1;
-    public static final int PERM_INHERIT = 0x1 << 0;
-
-    public static String perm2String(final int perm) {
-        final StringBuffer sb = new StringBuffer("---");
-        if (isReadable(perm)) {
-            sb.replace(0, 1, "R");
-        }
-
-        if (isWriteable(perm)) {
-            sb.replace(1, 2, "W");
-        }
-
-        if (isInherited(perm)) {
-            sb.replace(2, 3, "X");
-        }
-
-        return sb.toString();
-    }
-
-    public static boolean isReadable(final int perm) {
-        return (perm & PERM_READ) == PERM_READ;
-    }
-
-    public static boolean isWriteable(final int perm) {
-        return (perm & PERM_WRITE) == PERM_WRITE;
-    }
-
-    public static boolean isInherited(final int perm) {
-        return (perm & PERM_INHERIT) == PERM_INHERIT;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/consumer/ConsumeFromWhere.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/consumer/ConsumeFromWhere.java b/common/src/main/java/com/alibaba/rocketmq/common/consumer/ConsumeFromWhere.java
deleted file mode 100644
index ededc90..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/consumer/ConsumeFromWhere.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.consumer;
-
-/**
- *
- * @author shijia.wxr
- */
-public enum ConsumeFromWhere {
-    CONSUME_FROM_LAST_OFFSET,
-
-    @Deprecated
-    CONSUME_FROM_LAST_OFFSET_AND_FROM_MIN_WHEN_BOOT_FIRST,
-    @Deprecated
-    CONSUME_FROM_MIN_OFFSET,
-    @Deprecated
-    CONSUME_FROM_MAX_OFFSET,
-    CONSUME_FROM_FIRST_OFFSET,
-    CONSUME_FROM_TIMESTAMP,
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterAPI.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterAPI.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterAPI.java
deleted file mode 100644
index 2b26b83..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterAPI.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.filter;
-
-import com.alibaba.rocketmq.common.protocol.heartbeat.SubscriptionData;
-
-import java.net.URL;
-
-
-/**
- * @author shijia.wxr
- *
- */
-public class FilterAPI {
-    public static URL classFile(final String className) {
-        final String javaSource = simpleClassName(className) + ".java";
-        URL url = FilterAPI.class.getClassLoader().getResource(javaSource);
-        return url;
-    }
-
-    public static String simpleClassName(final String className) {
-        String simple = className;
-        int index = className.lastIndexOf(".");
-        if (index >= 0) {
-            simple = className.substring(index + 1);
-        }
-
-        return simple;
-    }
-
-    public static SubscriptionData buildSubscriptionData(final String consumerGroup, String topic,
-                                                         String subString) throws Exception {
-        SubscriptionData subscriptionData = new SubscriptionData();
-        subscriptionData.setTopic(topic);
-        subscriptionData.setSubString(subString);
-
-        if (null == subString || subString.equals(SubscriptionData.SUB_ALL) || subString.length() == 0) {
-            subscriptionData.setSubString(SubscriptionData.SUB_ALL);
-        } else {
-            String[] tags = subString.split("\\|\\|");
-            if (tags != null && tags.length > 0) {
-                for (String tag : tags) {
-                    if (tag.length() > 0) {
-                        String trimString = tag.trim();
-                        if (trimString.length() > 0) {
-                            subscriptionData.getTagsSet().add(trimString);
-                            subscriptionData.getCodeSet().add(trimString.hashCode());
-                        }
-                    }
-                }
-            } else {
-                throw new Exception("subString split error");
-            }
-        }
-
-        return subscriptionData;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterContext.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterContext.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterContext.java
deleted file mode 100644
index 50cc5fc..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/FilterContext.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter;
-
-public class FilterContext {
-    private String consumerGroup;
-
-
-    public String getConsumerGroup() {
-        return consumerGroup;
-    }
-
-
-    public void setConsumerGroup(String consumerGroup) {
-        this.consumerGroup = consumerGroup;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/MessageFilter.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/MessageFilter.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/MessageFilter.java
deleted file mode 100644
index 8a1252e..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/MessageFilter.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter;
-
-import com.alibaba.rocketmq.common.message.MessageExt;
-
-
-public interface MessageFilter {
-    boolean match(final MessageExt msg, final FilterContext context);
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Op.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Op.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Op.java
deleted file mode 100644
index f83a5f5..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Op.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter.impl;
-
-public abstract class Op {
-
-    private String symbol;
-
-
-    protected Op(String symbol) {
-        this.symbol = symbol;
-    }
-
-
-    public String getSymbol() {
-        return symbol;
-    }
-
-
-    public String toString() {
-        return symbol;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operand.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operand.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operand.java
deleted file mode 100644
index 95ca663..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operand.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter.impl;
-
-public class Operand extends Op {
-
-    public Operand(String symbol) {
-        super(symbol);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operator.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operator.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operator.java
deleted file mode 100644
index c906d72..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Operator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter.impl;
-
-public class Operator extends Op {
-
-    public static final Operator LEFTPARENTHESIS = new Operator("(", 30, false);
-    public static final Operator RIGHTPARENTHESIS = new Operator(")", 30, false);
-    public static final Operator AND = new Operator("&&", 20, true);
-    public static final Operator OR = new Operator("||", 15, true);
-
-    private int priority;
-    private boolean compareable;
-
-
-    private Operator(String symbol, int priority, boolean compareable) {
-        super(symbol);
-        this.priority = priority;
-        this.compareable = compareable;
-    }
-
-    public static Operator createOperator(String operator) {
-        if (LEFTPARENTHESIS.getSymbol().equals(operator))
-            return LEFTPARENTHESIS;
-        else if (RIGHTPARENTHESIS.getSymbol().equals(operator))
-            return RIGHTPARENTHESIS;
-        else if (AND.getSymbol().equals(operator))
-            return AND;
-        else if (OR.getSymbol().equals(operator))
-            return OR;
-        else
-            throw new IllegalArgumentException("unsupport operator " + operator);
-    }
-
-    public int getPriority() {
-        return priority;
-    }
-
-    public boolean isCompareable() {
-        return compareable;
-    }
-
-
-    public int compare(Operator operator) {
-        if (this.priority > operator.priority)
-            return 1;
-        else if (this.priority == operator.priority)
-            return 0;
-        else
-            return -1;
-    }
-
-    public boolean isSpecifiedOp(String operator) {
-        return this.getSymbol().equals(operator);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/PolishExpr.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/PolishExpr.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/PolishExpr.java
deleted file mode 100644
index 518c45e..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/PolishExpr.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Stack;
-
-import static com.alibaba.rocketmq.common.filter.impl.Operator.LEFTPARENTHESIS;
-import static com.alibaba.rocketmq.common.filter.impl.Operator.RIGHTPARENTHESIS;
-import static com.alibaba.rocketmq.common.filter.impl.Operator.createOperator;
-
-public class PolishExpr {
-
-    public static List<Op> reversePolish(String expression) {
-        return reversePolish(participle(expression));
-    }
-
-    /**
-     * Shunting-yard algorithm <br/>
-     * http://en.wikipedia.org/wiki/Shunting_yard_algorithm
-     *
-     * @param tokens
-     * @return the compute result of Shunting-yard algorithm
-     */
-    public static List<Op> reversePolish(List<Op> tokens) {
-        List<Op> segments = new ArrayList<Op>();
-        Stack<Operator> operatorStack = new Stack<Operator>();
-
-        for (int i = 0; i < tokens.size(); i++) {
-            Op token = tokens.get(i);
-            if (isOperand(token)) {
-
-                segments.add(token);
-            } else if (isLeftParenthesis(token)) {
-
-                operatorStack.push((Operator) token);
-            } else if (isRightParenthesis(token)) {
-
-                Operator opNew = null;
-                while (!operatorStack.empty() && LEFTPARENTHESIS != (opNew = operatorStack.pop())) {
-                    segments.add(opNew);
-                }
-                if (null == opNew || LEFTPARENTHESIS != opNew)
-                    throw new IllegalArgumentException("mismatched parentheses");
-            } else if (isOperator(token)) {
-
-                Operator opNew = (Operator) token;
-                if (!operatorStack.empty()) {
-                    Operator opOld = operatorStack.peek();
-                    if (opOld.isCompareable() && opNew.compare(opOld) != 1) {
-                        segments.add(operatorStack.pop());
-                    }
-                }
-                operatorStack.push(opNew);
-            } else
-                throw new IllegalArgumentException("illegal token " + token);
-        }
-
-        while (!operatorStack.empty()) {
-            Operator operator = operatorStack.pop();
-            if (LEFTPARENTHESIS == operator || RIGHTPARENTHESIS == operator)
-                throw new IllegalArgumentException("mismatched parentheses " + operator);
-            segments.add(operator);
-        }
-
-        return segments;
-    }
-
-    /**
-     *
-     * @param expression
-     *
-     * @return
-     *
-     * @throws Exception
-     */
-    private static List<Op> participle(String expression) {
-        List<Op> segments = new ArrayList<Op>();
-
-        int size = expression.length();
-        int wordStartIndex = -1;
-        int wordLen = 0;
-        Type preType = Type.NULL;
-
-        for (int i = 0; i < size; i++) {
-            int chValue = (int) expression.charAt(i);
-
-            if ((97 <= chValue && chValue <= 122) || (65 <= chValue && chValue <= 90)
-                    || (49 <= chValue && chValue <= 57) || 95 == chValue) {
-
-
-                if (Type.OPERATOR == preType || Type.SEPAERATOR == preType || Type.NULL == preType
-                        || Type.PARENTHESIS == preType) {
-                    if (Type.OPERATOR == preType) {
-                        segments.add(createOperator(expression.substring(wordStartIndex, wordStartIndex
-                                + wordLen)));
-                    }
-                    wordStartIndex = i;
-                    wordLen = 0;
-                }
-                preType = Type.OPERAND;
-                wordLen++;
-            } else if (40 == chValue || 41 == chValue) {
-
-
-                if (Type.OPERATOR == preType) {
-                    segments.add(createOperator(expression
-                            .substring(wordStartIndex, wordStartIndex + wordLen)));
-                    wordStartIndex = -1;
-                    wordLen = 0;
-                } else if (Type.OPERAND == preType) {
-                    segments.add(new Operand(expression.substring(wordStartIndex, wordStartIndex + wordLen)));
-                    wordStartIndex = -1;
-                    wordLen = 0;
-                }
-
-                preType = Type.PARENTHESIS;
-                segments.add(createOperator((char) chValue + ""));
-            } else if (38 == chValue || 124 == chValue) {
-
-                if (Type.OPERAND == preType || Type.SEPAERATOR == preType || Type.PARENTHESIS == preType) {
-                    if (Type.OPERAND == preType) {
-                        segments.add(new Operand(expression.substring(wordStartIndex, wordStartIndex
-                                + wordLen)));
-                    }
-                    wordStartIndex = i;
-                    wordLen = 0;
-                }
-                preType = Type.OPERATOR;
-                wordLen++;
-            } else if (32 == chValue || 9 == chValue) {
-
-
-                if (Type.OPERATOR == preType) {
-                    segments.add(createOperator(expression
-                            .substring(wordStartIndex, wordStartIndex + wordLen)));
-                    wordStartIndex = -1;
-                    wordLen = 0;
-                } else if (Type.OPERAND == preType) {
-                    segments.add(new Operand(expression.substring(wordStartIndex, wordStartIndex + wordLen)));
-                    wordStartIndex = -1;
-                    wordLen = 0;
-                }
-                preType = Type.SEPAERATOR;
-            } else {
-
-                throw new IllegalArgumentException("illegal expression, at index " + i + " " + (char) chValue);
-            }
-
-        }
-
-        if (wordLen > 0) {
-            segments.add(new Operand(expression.substring(wordStartIndex, wordStartIndex + wordLen)));
-        }
-        return segments;
-    }
-
-    public static boolean isOperand(Op token) {
-        return token instanceof Operand;
-    }
-
-    public static boolean isLeftParenthesis(Op token) {
-        return token instanceof Operator && LEFTPARENTHESIS == (Operator) token;
-    }
-
-    public static boolean isRightParenthesis(Op token) {
-        return token instanceof Operator && RIGHTPARENTHESIS == (Operator) token;
-    }
-
-    public static boolean isOperator(Op token) {
-        return token instanceof Operator;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Type.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Type.java b/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Type.java
deleted file mode 100644
index 1c0b343..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/filter/impl/Type.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.filter.impl;
-
-public enum Type {
-    NULL,
-    OPERAND,
-    OPERATOR,
-    PARENTHESIS,
-    SEPAERATOR;
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/help/FAQUrl.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/help/FAQUrl.java b/common/src/main/java/com/alibaba/rocketmq/common/help/FAQUrl.java
deleted file mode 100644
index 06a74a6..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/help/FAQUrl.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.help;
-
-/**
- * @author shijia.wxr
- */
-public class FAQUrl {
-
-    public static final String APPLY_TOPIC_URL = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&topic_not_exist";
-
-
-    public static final String NAME_SERVER_ADDR_NOT_EXIST_URL = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&namesrv_not_exist";
-
-
-    public static final String GROUP_NAME_DUPLICATE_URL = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&group_duplicate";
-
-
-    public static final String CLIENT_PARAMETER_CHECK_URL = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&parameter_check_failed";
-
-
-    public static final String SUBSCRIPTION_GROUP_NOT_EXIST = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&subGroup_not_exist";
-
-
-    public static final String CLIENT_SERVICE_NOT_OK = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&service_not_ok";
-
-    // FAQ: No route info of this topic, TopicABC
-    public static final String NO_TOPIC_ROUTE_INFO = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&topic_not_exist";
-
-
-    public static final String LOAD_JSON_EXCEPTION = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&load_json_exception";
-
-
-    public static final String SAME_GROUP_DIFFERENT_TOPIC = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&subscription_exception";
-
-
-    public static final String MQLIST_NOT_EXIST = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&queue_not_exist";
-
-    public static final String UNEXPECTED_EXCEPTION_URL = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&unexpected_exception";
-
-
-    public static final String SEND_MSG_FAILED = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&send_msg_failed";
-
-
-    public static final String UNKNOWN_HOST_EXCEPTION = //
-            "http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&unknown_host";
-
-    private static final String TIP_STRING_BEGIN = "\nSee ";
-    private static final String TIP_STRING_END = " for further details.";
-
-
-    public static String suggestTodo(final String url) {
-        StringBuilder sb = new StringBuilder();
-        sb.append(TIP_STRING_BEGIN);
-        sb.append(url);
-        sb.append(TIP_STRING_END);
-        return sb.toString();
-    }
-
-    public static String attachDefaultURL(final String errorMessage) {
-        if (errorMessage != null) {
-            int index = errorMessage.indexOf(TIP_STRING_BEGIN);
-            if (-1 == index) {
-                StringBuilder sb = new StringBuilder();
-                sb.append(errorMessage);
-                sb.append("\n");
-                sb.append("For more information, please visit the url, ");
-                sb.append(UNEXPECTED_EXCEPTION_URL);
-                return sb.toString();
-            }
-        }
-
-        return errorMessage;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/hook/FilterCheckHook.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/hook/FilterCheckHook.java b/common/src/main/java/com/alibaba/rocketmq/common/hook/FilterCheckHook.java
deleted file mode 100644
index f5d9d7e..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/hook/FilterCheckHook.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.hook;
-
-import java.nio.ByteBuffer;
-
-
-/**
- *
- * @author manhong.yqd
- *
- */
-public interface FilterCheckHook {
-    public String hookName();
-
-
-    public boolean isFilterMatched(final boolean isUnitMode, final ByteBuffer byteBuffer);
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/message/Message.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/message/Message.java b/common/src/main/java/com/alibaba/rocketmq/common/message/Message.java
deleted file mode 100644
index eeb6f52..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/message/Message.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.message;
-
-import java.io.Serializable;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-
-
-/**
- *
- * @author shijia.wxr
- *
- */
-public class Message implements Serializable {
-    private static final long serialVersionUID = 8445773977080406428L;
-
-    private String topic;
-    private int flag;
-    private Map<String, String> properties;
-    private byte[] body;
-
-
-    public Message() {
-    }
-
-
-    public Message(String topic, byte[] body) {
-        this(topic, "", "", 0, body, true);
-    }
-
-
-    public Message(String topic, String tags, String keys, int flag, byte[] body, boolean waitStoreMsgOK) {
-        this.topic = topic;
-        this.flag = flag;
-        this.body = body;
-
-        if (tags != null && tags.length() > 0)
-            this.setTags(tags);
-
-        if (keys != null && keys.length() > 0)
-            this.setKeys(keys);
-
-        this.setWaitStoreMsgOK(waitStoreMsgOK);
-    }
-
-    public void setKeys(String keys) {
-        this.putProperty(MessageConst.PROPERTY_KEYS, keys);
-    }
-
-    void putProperty(final String name, final String value) {
-        if (null == this.properties) {
-            this.properties = new HashMap<String, String>();
-        }
-
-        this.properties.put(name, value);
-    }
-
-
-    public Message(String topic, String tags, byte[] body) {
-        this(topic, tags, "", 0, body, true);
-    }
-
-
-    public Message(String topic, String tags, String keys, byte[] body) {
-        this(topic, tags, keys, 0, body, true);
-    }
-
-    void clearProperty(final String name) {
-        if (null != this.properties) {
-            this.properties.remove(name);
-        }
-    }
-
-    public void putUserProperty(final String name, final String value) {
-        if (MessageConst.STRING_HASH_SET.contains(name)) {
-            throw new RuntimeException(String.format(
-                    "The Property<%s> is used by system, input another please", name));
-        }
-        this.putProperty(name, value);
-    }
-
-    public String getUserProperty(final String name) {
-        return this.getProperty(name);
-    }
-
-    public String getProperty(final String name) {
-        if (null == this.properties) {
-            this.properties = new HashMap<String, String>();
-        }
-
-        return this.properties.get(name);
-    }
-
-    public String getTopic() {
-        return topic;
-    }
-
-    public void setTopic(String topic) {
-        this.topic = topic;
-    }
-
-    public String getTags() {
-        return this.getProperty(MessageConst.PROPERTY_TAGS);
-    }
-
-    public void setTags(String tags) {
-        this.putProperty(MessageConst.PROPERTY_TAGS, tags);
-    }
-
-    public String getKeys() {
-        return this.getProperty(MessageConst.PROPERTY_KEYS);
-    }
-
-    public void setKeys(Collection<String> keys) {
-        StringBuffer sb = new StringBuffer();
-        for (String k : keys) {
-            sb.append(k);
-            sb.append(MessageConst.KEY_SEPARATOR);
-        }
-
-        this.setKeys(sb.toString().trim());
-    }
-
-
-    public int getDelayTimeLevel() {
-        String t = this.getProperty(MessageConst.PROPERTY_DELAY_TIME_LEVEL);
-        if (t != null) {
-            return Integer.parseInt(t);
-        }
-
-        return 0;
-    }
-
-
-    public void setDelayTimeLevel(int level) {
-        this.putProperty(MessageConst.PROPERTY_DELAY_TIME_LEVEL, String.valueOf(level));
-    }
-
-
-    public boolean isWaitStoreMsgOK() {
-        String result = this.getProperty(MessageConst.PROPERTY_WAIT_STORE_MSG_OK);
-        if (null == result)
-            return true;
-
-        return Boolean.parseBoolean(result);
-    }
-
-
-    public void setWaitStoreMsgOK(boolean waitStoreMsgOK) {
-        this.putProperty(MessageConst.PROPERTY_WAIT_STORE_MSG_OK, Boolean.toString(waitStoreMsgOK));
-    }
-
-
-    public int getFlag() {
-        return flag;
-    }
-
-
-    public void setFlag(int flag) {
-        this.flag = flag;
-    }
-
-
-    public byte[] getBody() {
-        return body;
-    }
-
-
-    public void setBody(byte[] body) {
-        this.body = body;
-    }
-
-
-    public Map<String, String> getProperties() {
-        return properties;
-    }
-
-
-    void setProperties(Map<String, String> properties) {
-        this.properties = properties;
-    }
-
-    public String getBuyerId() {
-        return getProperty(MessageConst.PROPERTY_BUYER_ID);
-    }
-
-    public void setBuyerId(String buyerId) {
-        putProperty(MessageConst.PROPERTY_BUYER_ID, buyerId);
-    }
-
-    @Override
-    public String toString() {
-        return "Message [topic=" + topic + ", flag=" + flag + ", properties=" + properties + ", body="
-                + (body != null ? body.length : 0) + "]";
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/message/MessageAccessor.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageAccessor.java b/common/src/main/java/com/alibaba/rocketmq/common/message/MessageAccessor.java
deleted file mode 100644
index bbbca1a..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageAccessor.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.rocketmq.common.message;
-
-import java.util.Map;
-
-
-public class MessageAccessor {
-
-    public static void clearProperty(final Message msg, final String name) {
-        msg.clearProperty(name);
-    }
-
-    public static void setProperties(final Message msg, Map<String, String> properties) {
-        msg.setProperties(properties);
-    }
-
-    public static void setTransferFlag(final Message msg, String unit) {
-        putProperty(msg, MessageConst.PROPERTY_TRANSFER_FLAG, unit);
-    }
-
-    public static void putProperty(final Message msg, final String name, final String value) {
-        msg.putProperty(name, value);
-    }
-
-    public static String getTransferFlag(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_TRANSFER_FLAG);
-    }
-
-
-    public static void setCorrectionFlag(final Message msg, String unit) {
-        putProperty(msg, MessageConst.PROPERTY_CORRECTION_FLAG, unit);
-    }
-
-
-    public static String getCorrectionFlag(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_CORRECTION_FLAG);
-    }
-
-
-    public static void setOriginMessageId(final Message msg, String originMessageId) {
-        putProperty(msg, MessageConst.PROPERTY_ORIGIN_MESSAGE_ID, originMessageId);
-    }
-
-
-    public static String getOriginMessageId(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_ORIGIN_MESSAGE_ID);
-    }
-
-
-    public static void setMQ2Flag(final Message msg, String flag) {
-        putProperty(msg, MessageConst.PROPERTY_MQ2_FLAG, flag);
-    }
-
-
-    public static String getMQ2Flag(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_MQ2_FLAG);
-    }
-
-
-    public static void setReconsumeTime(final Message msg, String reconsumeTimes) {
-        putProperty(msg, MessageConst.PROPERTY_RECONSUME_TIME, reconsumeTimes);
-    }
-
-
-    public static String getReconsumeTime(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_RECONSUME_TIME);
-    }
-
-
-    public static void setMaxReconsumeTimes(final Message msg, String maxReconsumeTimes) {
-        putProperty(msg, MessageConst.PROPERTY_MAX_RECONSUME_TIMES, maxReconsumeTimes);
-    }
-
-
-    public static String getMaxReconsumeTimes(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_MAX_RECONSUME_TIMES);
-    }
-
-    public static void setConsumeStartTimeStamp(final Message msg, String propertyConsumeStartTimeStamp) {
-        putProperty(msg, MessageConst.PROPERTY_CONSUME_START_TIMESTAMP, propertyConsumeStartTimeStamp);
-    }
-
-
-    public static String getConsumeStartTimeStamp(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_CONSUME_START_TIMESTAMP);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientExt.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientExt.java b/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientExt.java
deleted file mode 100644
index 0ab372e..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientExt.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package com.alibaba.rocketmq.common.message;
-
-public class MessageClientExt extends MessageExt {
-        
-    public void setOffsetMsgId(String offsetMsgId) {
-        super.setMsgId(offsetMsgId);
-    }
-    
-
-    public String getOffsetMsgId() {
-        return super.getMsgId();
-    }
-    
-    public void setMsgId(String msgId) {
-        //DO NOTHING
-        //MessageClientIDSetter.setUniqID(this);
-    }
-    
-    @Override
-    public String getMsgId() {
-        String uniqID = MessageClientIDSetter.getUniqID(this);
-        if (uniqID == null) {
-            return this.getOffsetMsgId();
-        }
-        else {
-            return uniqID;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/de6f9416/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientIDSetter.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientIDSetter.java b/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientIDSetter.java
deleted file mode 100644
index 82cd3d1..0000000
--- a/common/src/main/java/com/alibaba/rocketmq/common/message/MessageClientIDSetter.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.alibaba.rocketmq.common.message;
-
-import com.alibaba.rocketmq.common.UtilAll;
-
-import java.nio.ByteBuffer;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.concurrent.atomic.AtomicInteger;
-
-public class MessageClientIDSetter {
-    private static final String TOPIC_KEY_SPLITTER = "#";
-    private static final int LEN;
-    private static final String FIX_STRING;
-    private static final AtomicInteger COUNTER;
-    private static long startTime;
-    private static long nextStartTime;
-
-    static {
-        LEN = 4 + 2 + 4 + 4 + 2;
-        ByteBuffer tempBuffer = ByteBuffer.allocate(10);
-        tempBuffer.position(2);
-        tempBuffer.putInt(UtilAll.getPid());
-        tempBuffer.position(0);
-        try {
-            tempBuffer.put(UtilAll.getIP());
-        } catch (Exception e) {
-            tempBuffer.put(createFakeIP());
-        }
-        tempBuffer.position(6);
-        tempBuffer.putInt(MessageClientIDSetter.class.getClassLoader().hashCode()); //4
-        FIX_STRING = UtilAll.bytes2string(tempBuffer.array());
-        setStartTime(System.currentTimeMillis());
-        COUNTER = new AtomicInteger(0);
-    }
-
-    private synchronized static void setStartTime(long millis) {
-        Calendar cal = Calendar.getInstance();
-        cal.setTimeInMillis(millis);
-        cal.set(Calendar.DAY_OF_MONTH, 1);
-        cal.set(Calendar.HOUR, 0);
-        cal.set(Calendar.MINUTE, 0);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-        startTime = cal.getTimeInMillis();
-        cal.add(Calendar.MONTH, 1);
-        nextStartTime = cal.getTimeInMillis();
-    }
-
-    public static Date getNearlyTimeFromID(String msgID) {
-        ByteBuffer buf = ByteBuffer.allocate(8);
-        byte[] bytes = UtilAll.string2bytes(msgID);
-        buf.put((byte) 0);
-        buf.put((byte) 0);
-        buf.put((byte) 0);
-        buf.put((byte) 0);
-        buf.put(bytes, 10, 4);
-        buf.position(0);
-        long spanMS = buf.getLong();
-        Calendar cal = Calendar.getInstance();
-        long now = cal.getTimeInMillis();
-        cal.set(Calendar.DAY_OF_MONTH, 1);
-        cal.set(Calendar.HOUR, 0);
-        cal.set(Calendar.MINUTE, 0);
-        cal.set(Calendar.SECOND, 0);
-        cal.set(Calendar.MILLISECOND, 0);
-        long monStartTime = cal.getTimeInMillis();
-        if (monStartTime + spanMS >= now) {
-            cal.add(Calendar.MONTH, -1);
-            monStartTime = cal.getTimeInMillis();
-        }
-        cal.setTimeInMillis(monStartTime + spanMS);
-        return cal.getTime();
-    }
-
-    public static String getIPStrFromID(String msgID) {
-        byte[] ipBytes = getIPFromID(msgID);
-        return UtilAll.ipToIPv4Str(ipBytes);
-    }
-
-    public static byte[] getIPFromID(String msgID) {
-        byte[] result = new byte[4];
-        byte[] bytes = UtilAll.string2bytes(msgID);
-        System.arraycopy(bytes, 0, result, 0, 4);
-        return result;
-    }
-
-    public static String createUniqID() {
-        StringBuilder sb = new StringBuilder(LEN * 2);
-        sb.append(FIX_STRING);
-        sb.append(UtilAll.bytes2string(createUniqIDBuffer()));
-        return sb.toString();
-    }
-
-
-    private static byte[] createUniqIDBuffer() {
-        ByteBuffer buffer = ByteBuffer.allocate(4 + 2);
-        long current = System.currentTimeMillis();
-        if (current >= nextStartTime) {
-            setStartTime(current);
-        }
-        buffer.position(0);
-        buffer.putInt((int) (System.currentTimeMillis() - startTime));
-        buffer.putShort((short) COUNTER.getAndIncrement());
-        return buffer.array();
-    }
-
-    public static void setUniqID(final Message msg) {
-        if (msg.getProperty(MessageConst.PROPERTY_UNIQ_CLIENT_MESSAGE_ID_KEYIDX) == null) {
-            msg.putProperty(MessageConst.PROPERTY_UNIQ_CLIENT_MESSAGE_ID_KEYIDX, createUniqID());
-        }
-    }
-
-    public static String getUniqID(final Message msg) {
-        return msg.getProperty(MessageConst.PROPERTY_UNIQ_CLIENT_MESSAGE_ID_KEYIDX);
-    }
-
-    public static byte[] createFakeIP() {
-        ByteBuffer bb = ByteBuffer.allocate(8);
-        bb.putLong(System.currentTimeMillis());
-        bb.position(4);
-        byte[] fakeIP = new byte[4];
-        bb.get(fakeIP);
-        return fakeIP;
-    }
-}
-