package org.yzh.protocol.commons; 
 | 
  
 | 
import io.netty.buffer.ByteBuf; 
 | 
  
 | 
public class JTUtils { 
 | 
  
 | 
    /** 
 | 
     * BCC校验(异或校验) 
 | 
     */ 
 | 
    public static byte bcc(ByteBuf byteBuf, int tailOffset) { 
 | 
        byte cs = 0; 
 | 
        int readerIndex = byteBuf.readerIndex(); 
 | 
        int writerIndex = byteBuf.writerIndex() + tailOffset; 
 | 
        while (readerIndex < writerIndex) 
 | 
            cs ^= byteBuf.getByte(readerIndex++); 
 | 
        return cs; 
 | 
    } 
 | 
  
 | 
    public static int headerLength(int version, boolean isSubpackage) { 
 | 
        if (version > 0) 
 | 
            return isSubpackage ? 21 : 17; 
 | 
        else 
 | 
            return isSubpackage ? 16 : 12; 
 | 
    } 
 | 
} 
 |