Java 类org.apache.catalina.tribes.UniqueId 实例源码

项目:tomcat7    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:apache-tomcat-7.0.73-with-comment    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:lazycat    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * 
 * @param destination
 *            Member[] - the destinations, null or zero length means all
 * @param msg
 *            ClusterMessage - the message to send
 * @param payload
 *            TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload)
        throws ChannelException {
    if (destination == null)
        destination = membershipService.getMembers();
    if ((msg.getOptions() & Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg, destination);
    }
    if (Logs.MESSAGES.isTraceEnabled()) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at "
                + new java.sql.Timestamp(System.currentTimeMillis()) + " to " + Arrays.toNameString(destination));
    }
}
项目:lazycat    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId, MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i = 0; i < entries.length; i++) {
            MapEntry entry = entries[i].getValue();
            if (entry.expired(now, expire)) {
                if (log.isInfoEnabled())
                    log.info("Message [" + entry.id + "] has expired. Removing.");
                messages.remove(entry.id);
            } // end if
        }
    } catch (Exception x) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.", x);
    } finally {
        super.heartbeat();
    }
}
项目:class-guard    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:apache-tomcat-7.0.57    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:apache-tomcat-7.0.57    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        @SuppressWarnings("unchecked")
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:WBSAirback    文件:TwoPhaseCommitInterceptor.java   
@Override
public void heartbeat() {
    try {
        long now = System.currentTimeMillis();
        Map.Entry<UniqueId,MapEntry>[] entries = messages.entrySet().toArray(new Map.Entry[messages.size()]);
        for (int i=0; i<entries.length; i++ ) {
            MapEntry entry = entries[i].getValue();
            if ( entry.expired(now,expire) ) {
                if(log.isInfoEnabled())
                    log.info("Message ["+entry.id+"] has expired. Removing.");
                messages.remove(entry.id);
            }//end if
        }
    } catch ( Exception x ) {
        log.warn("Unable to perform heartbeat on the TwoPhaseCommit interceptor.",x);
    } finally {
        super.heartbeat();
    }
}
项目:tomcat7    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:tomcat7    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:tomcat7    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:tomcat7    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader,
                           MemberImpl source, 
                           MemberImpl[] view,
                           UniqueId id,
                           byte[] type) {
    this.buf = new XByteBuffer(4096,false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:tomcat7    文件:NonBlockingCoordinator.java   
public void parse() {
    //header
    int offset = 16;
    //leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(),offset,ldr,0,ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    //source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(),offset,src,0,srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    //view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i=0; i<view.length; i++ ) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    //id
    this.id = new UniqueId(buf.getBytesDirect(),offset,16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:apache-tomcat-7.0.73-with-comment    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:apache-tomcat-7.0.73-with-comment    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:apache-tomcat-7.0.73-with-comment    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:apache-tomcat-7.0.73-with-comment    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader,
                           MemberImpl source, 
                           MemberImpl[] view,
                           UniqueId id,
                           byte[] type) {
    this.buf = new XByteBuffer(4096,false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:apache-tomcat-7.0.73-with-comment    文件:NonBlockingCoordinator.java   
public void parse() {
    //header
    int offset = 16;
    //leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(),offset,ldr,0,ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    //source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(),offset,src,0,srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    //view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i=0; i<view.length; i++ ) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    //id
    this.id = new UniqueId(buf.getBytesDirect(),offset,16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:lazycat    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if (Logs.MESSAGES.isTraceEnabled()) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at "
                + new java.sql.Timestamp(System.currentTimeMillis()) + " from " + msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:lazycat    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local, AbsoluteOrder.comp, true);
    Arrays.fill(m, others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset();
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,
            new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:lazycat    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader, MemberImpl source, MemberImpl[] view, UniqueId id, byte[] type) {
    this.buf = new XByteBuffer(4096, false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:lazycat    文件:NonBlockingCoordinator.java   
public void parse() {
    // header
    int offset = 16;
    // leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(), offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(), offset, ldr, 0, ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    // source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(), offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(), offset, src, 0, srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    // view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(), offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i = 0; i < view.length; i++) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(), offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    // id
    this.id = new UniqueId(buf.getBytesDirect(), offset, 16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:class-guard    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:class-guard    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:class-guard    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:class-guard    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader,
                           MemberImpl source, 
                           MemberImpl[] view,
                           UniqueId id,
                           byte[] type) {
    this.buf = new XByteBuffer(4096,false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:class-guard    文件:NonBlockingCoordinator.java   
public void parse() {
    //header
    int offset = 16;
    //leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(),offset,ldr,0,ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    //source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(),offset,src,0,srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    //view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i=0; i<view.length; i++ ) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    //id
    this.id = new UniqueId(buf.getBytesDirect(),offset,16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:apache-tomcat-7.0.57    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:apache-tomcat-7.0.57    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader,
                           MemberImpl source, 
                           MemberImpl[] view,
                           UniqueId id,
                           byte[] type) {
    this.buf = new XByteBuffer(4096,false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
public void parse() {
    //header
    int offset = 16;
    //leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(),offset,ldr,0,ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    //source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(),offset,src,0,srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    //view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i=0; i<view.length; i++ ) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    //id
    this.id = new UniqueId(buf.getBytesDirect(),offset,16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:apache-tomcat-7.0.57    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:apache-tomcat-7.0.57    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
public CoordinationMessage(MemberImpl leader,
                           MemberImpl source, 
                           MemberImpl[] view,
                           UniqueId id,
                           byte[] type) {
    this.buf = new XByteBuffer(4096,false);
    this.leader = leader;
    this.source = source;
    this.view = view;
    this.id = id;
    this.type = type;
    this.write();
}
项目:apache-tomcat-7.0.57    文件:NonBlockingCoordinator.java   
public void parse() {
    //header
    int offset = 16;
    //leader
    int ldrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] ldr = new byte[ldrLen];
    System.arraycopy(buf.getBytesDirect(),offset,ldr,0,ldrLen);
    leader = MemberImpl.getMember(ldr);
    offset += ldrLen;
    //source
    int srcLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    byte[] src = new byte[srcLen];
    System.arraycopy(buf.getBytesDirect(),offset,src,0,srcLen);
    source = MemberImpl.getMember(src);
    offset += srcLen;
    //view
    int mbrCount = XByteBuffer.toInt(buf.getBytesDirect(),offset);
    offset += 4;
    view = new MemberImpl[mbrCount];
    for (int i=0; i<view.length; i++ ) {
        int mbrLen = XByteBuffer.toInt(buf.getBytesDirect(),offset);
        offset += 4;
        byte[] mbr = new byte[mbrLen];
        System.arraycopy(buf.getBytesDirect(), offset, mbr, 0, mbrLen);
        view[i] = MemberImpl.getMember(mbr);
        offset += mbrLen;
    }
    //id
    this.id = new UniqueId(buf.getBytesDirect(),offset,16);
    offset += 16;
    type = new byte[16];
    System.arraycopy(buf.getBytesDirect(), offset, type, 0, type.length);
    offset += 16;

}
项目:WBSAirback    文件:ChannelCoordinator.java   
/**
 * Send a message to one or more members in the cluster
 * @param destination Member[] - the destinations, null or zero length means all
 * @param msg ClusterMessage - the message to send
 * @param payload TBA
 */
@Override
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException {
    if ( destination == null ) destination = membershipService.getMembers();
    if ((msg.getOptions()&Channel.SEND_OPTIONS_MULTICAST) == Channel.SEND_OPTIONS_MULTICAST) {
        membershipService.broadcast(msg);
    } else {
        clusterSender.sendMessage(msg,destination);
    }
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Sent msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " to "+Arrays.toNameString(destination));
    }
}
项目:WBSAirback    文件:ChannelCoordinator.java   
@Override
public void messageReceived(ChannelMessage msg) {
    if ( Logs.MESSAGES.isTraceEnabled() ) {
        Logs.MESSAGES.trace("ChannelCoordinator - Received msg:" + new UniqueId(msg.getUniqueId()) + " at " +new java.sql.Timestamp(System.currentTimeMillis())+ " from "+msg.getAddress().getName());
    }
    super.messageReceived(msg);
}
项目:WBSAirback    文件:NonBlockingCoordinator.java   
private CoordinationMessage createElectionMsg(MemberImpl local, MemberImpl[] others, MemberImpl leader) {
    Membership m = new Membership(local,AbsoluteOrder.comp,true);
    Arrays.fill(m,others);
    MemberImpl[] mbrs = m.getMembers();
    m.reset(); 
    CoordinationMessage msg = new CoordinationMessage(leader, local, mbrs,new UniqueId(UUIDGenerator.randomUUID(true)), COORD_REQUEST);
    return msg;
}