当前位置: 首页>>代码示例>>Java>>正文


Java Event.SET_LOCAL_ADDRESS属性代码示例

本文整理汇总了Java中org.jgroups.Event.SET_LOCAL_ADDRESS属性的典型用法代码示例。如果您正苦于以下问题:Java Event.SET_LOCAL_ADDRESS属性的具体用法?Java Event.SET_LOCAL_ADDRESS怎么用?Java Event.SET_LOCAL_ADDRESS使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.jgroups.Event的用法示例。


在下文中一共展示了Event.SET_LOCAL_ADDRESS属性的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: down

public Object down(Event evt) {
    switch(evt.getType()) {
        case Event.MSG:
            Message msg=(Message)evt.getArg();
            FORK.ForkHeader hdr=(FORK.ForkHeader)msg.getHeader(FORK.ID);
            if(hdr == null)
                msg.putHeader(FORK.ID, hdr=new FORK.ForkHeader(fork_stack_id, null));
            else
                hdr.setForkStackId(fork_stack_id);
            break;
        case Event.SET_LOCAL_ADDRESS:
        case Event.VIEW_CHANGE:
        case Event.CONNECT:
        case Event.CONNECT_USE_FLUSH:
        case Event.CONNECT_WITH_STATE_TRANSFER:
        case Event.CONNECT_WITH_STATE_TRANSFER_USE_FLUSH:
        case Event.DISCONNECT:
            return null; // don't propagate further down, this is only important for the main stack
    }
    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:21,代码来源:ForkProtocol.java

示例2: down

public Object down(Event evt) {
    switch(evt.getType()) {
        case Event.SET_LOCAL_ADDRESS:
            local_addr=(Address)evt.getArg();
            break;
        case Event.VIEW_CHANGE:
            handleView((View)evt.getArg());
            break;
    }

    if(num_event_handlers > 0) {
        for(EventHandler handler: event_handlers) {
            try {
                handler.down(evt);
            }
            catch(Throwable t) {
                log.error("event handler failed handling down event", t);
            }
        }
    }

    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:23,代码来源:SUPERVISOR.java

示例3: down

/**
 * Fragment a packet if larger than frag_size (add a header). Otherwise just pass down. Only
 * add a header if fragmentation is needed !
 */
public Object down(Event evt) {
    switch(evt.getType()) {

        case Event.MSG:
            Message msg=(Message)evt.getArg();
            long size=msg.getLength();
            if(size > frag_size) {
                fragment(msg);  // Fragment and pass down
                return null;
            }
            break;

        case Event.VIEW_CHANGE:
            handleViewChange((View)evt.getArg());
            break;

        case Event.SET_LOCAL_ADDRESS:
            local_addr=(Address)evt.getArg();
            break;
    }

    return down_prot.down(evt);  // Pass on to the layer below us
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:27,代码来源:FRAG2.java

示例4: down

@Override
public Object down(Event evt) {
  switch (evt.getType()) {
    case Event.MSG:
      handleMessage((Message) evt.getArg());
      return null;
    case Event.SET_LOCAL_ADDRESS:
      uuid = (UUID) evt.getArg();
      break;
  }
  return down_prot.down(evt);
}
 
开发者ID:ampool,项目名称:monarch,代码行数:12,代码来源:InterceptUDP.java

示例5: down

public Object down(Event evt) {
    switch(evt.getType()) {
        case Event.VIEW_CHANGE:
            View view=(View)evt.getArg();
            handleView(view);
            break;
        case Event.SET_LOCAL_ADDRESS:
            local_addr=(Address)evt.getArg();
            break;
        case Event.CONNECT:
        case Event.CONNECT_USE_FLUSH:
        case Event.CONNECT_WITH_STATE_TRANSFER:
        case Event.CONNECT_WITH_STATE_TRANSFER_USE_FLUSH:
            local_host=getHostFor(local_addr);
            break;
        case Event.DISCONNECT:
            Object retval=down_prot.down(evt);
            local_host=null;
            return retval;

        case Event.UNSUSPECT:
            Address mbr=(Address)evt.getArg();
            unsuspect(mbr);
            break;
    }
    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:27,代码来源:FD_HOST.java

示例6: up

public Object up(Event evt) {
    if(evt.getType() == Event.SET_LOCAL_ADDRESS) {
        localAddress=(Address)evt.getArg();
        if(discard_dialog != null)
            discard_dialog.setTitle("Discard dialog (" + localAddress + ")");
    }

    if(evt.getType() == Event.MSG) {
        Message msg=(Message)evt.getArg();
        if(shouldDropUpMessage(msg, msg.getSrc()))
            return null;
    }

    return up_prot.up(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:15,代码来源:DISCARD.java

示例7: down

@Override
public Object down(Event evt) {
    switch (evt.getType()) {
    case Event.SET_LOCAL_ADDRESS:
        local_addr = (Address) evt.getArg();
        break;
    case Event.MSG:
        Message msg = (Message) evt.getArg();
        GmsHeader hdr = (GmsHeader) msg.getHeader(GMS_ID);
        if (needsAuthentication(hdr)) {
            // We are a client who needs to authenticate
            SaslClientContext ctx = null;
            Address remoteAddress = msg.getDest();
            try {
                ctx = new SaslClientContext(saslClientFactory, mech, server_name != null ? server_name : remoteAddress.toString(), client_callback_handler, sasl_props, client_subject);
                sasl_context.put(remoteAddress, ctx);
                ctx.addHeader(msg, null);
            } catch (Exception e) {
                if (ctx != null) {
                    disposeContext(remoteAddress);
                }
                throw new SecurityException(e);
            }
        }
        break;
    }

    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:29,代码来源:SASL.java

示例8: down

public Object down(Event evt) {
    switch(evt.getType()) {
        case Event.CONNECT:
        case Event.CONNECT_USE_FLUSH:
        case Event.CONNECT_WITH_STATE_TRANSFER:
        case Event.CONNECT_WITH_STATE_TRANSFER_USE_FLUSH:
            cluster_name=new AsciiString((String)evt.getArg());
            break;
        case Event.SET_LOCAL_ADDRESS:
            local_addr=(Address)evt.getArg();
            break;
    }
    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:14,代码来源:MAKE_BATCH.java

示例9: down

public Object down(Event evt) {
    switch(evt.getType()) {
        case Event.GET_PHYSICAL_ADDRESS:
            Object addr=down_prot.down(evt);
            return addr != null? addr : cache.get((Address)evt.getArg());

        case Event.GET_PHYSICAL_ADDRESSES:
            Collection<PhysicalAddress> addrs=(Collection<PhysicalAddress>)down_prot.down(evt);
            Collection<PhysicalAddress> tmp=new HashSet<>(addrs);
            tmp.addAll(cache.values());
            return tmp;

        case Event.GET_LOGICAL_PHYSICAL_MAPPINGS:
            Map<Address,PhysicalAddress> map=(Map<Address, PhysicalAddress>)down_prot.down(evt);
            Map<Address,PhysicalAddress> new_map=new HashMap<>(map);
            new_map.putAll(cache);
            return new_map;

        case Event.SET_PHYSICAL_ADDRESS:
            Tuple<Address,PhysicalAddress> new_val=(Tuple<Address, PhysicalAddress>)evt.getArg();
            if(new_val != null) {
                cache.put(new_val.getVal1(), new_val.getVal2());
                writeNodeToDisk(new_val.getVal1(), new_val.getVal2());
            }
            break;
        case Event.REMOVE_ADDRESS:
            Address tmp_addr=(Address)evt.getArg();
            if(cache.remove(tmp_addr) != null)
                removeNodeFromDisk(tmp_addr);
            break;
        case Event.SET_LOCAL_ADDRESS:
            local_addr=(Address)evt.getArg();
            break;
        case Event.VIEW_CHANGE:
            List<Address> members=((View)evt.getArg()).getMembers();
            for(Address mbr: cache.keySet()) {
                if(!members.contains(mbr)) {
                    cache.remove(mbr);
                    removeNodeFromDisk(mbr);
                }
            }
            break;
    }
    return down_prot.down(evt);
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:45,代码来源:PDC.java

示例10: up

/**
 * {@inheritDoc}
 * @see org.jgroups.UpHandler#up(org.jgroups.Event)
 */
@Override
public Object up(Event evt) {
    switch (evt.getType()) {
        case Event.MSG:
            Message msg = (Message) evt.getArg();
            MuxHeader hdr = (MuxHeader) msg.getHeader(MuxRequestCorrelator.MUX_ID);
            if (hdr != null) {
                short id = hdr.getId();
                UpHandler handler = handlers.get(id);
                return (handler != null) ? handler.up(evt) : new NoMuxHandler(id);
            }
            break;
        case Event.GET_APPLSTATE:
        case Event.GET_STATE_OK: 
        case Event.STATE_TRANSFER_OUTPUTSTREAM: 
        case Event.STATE_TRANSFER_INPUTSTREAM:
            ImmutableReference<Object> wrapper = handleStateTransferEvent(evt);
            if (wrapper != null)
            {
               return wrapper.get();
            }
            break;
        case Event.BLOCK:
        case Event.UNBLOCK:
            synchronized (flushMutex)
            {
               this.lastFlushEvent = evt;
               passToAllHandlers(evt);
               break;
            }
        case Event.VIEW_CHANGE:
        case Event.SET_LOCAL_ADDRESS: 
        case Event.SUSPECT:
            passToAllHandlers(evt);
            break;
        default:
            passToAllHandlers(evt);
            break;
    }
    
    return (defaultHandler != null) ? defaultHandler.up(evt) : null;
}
 
开发者ID:zjumty,项目名称:jgroups-3.6.4-fixed,代码行数:46,代码来源:MuxUpHandler.java


注:本文中的org.jgroups.Event.SET_LOCAL_ADDRESS属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。