本文整理汇总了Java中org.jgroups.Event.getType方法的典型用法代码示例。如果您正苦于以下问题:Java Event.getType方法的具体用法?Java Event.getType怎么用?Java Event.getType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.jgroups.Event
的用法示例。
在下文中一共展示了Event.getType方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: up
import org.jgroups.Event; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public Object up(Event evt) {
switch (evt.getType()) {
case Event.FIND_MBRS:
List<Address> missing = (List<Address>) evt.getArg();
Responses responses = new Responses(false);
for (Address laddr : missing) {
try {
if (laddr instanceof JGAddress) {
PingData pd = new PingData(laddr, true, laddr.toString(), newIpAddress(laddr));
responses.addResponse(pd, false);
updateUDPCache(pd);
}
} catch (RuntimeException e) {
logger.warn("Unable to create PingData response", e);
throw e;
}
}
return responses;
}
return up_prot.up(evt);
}
示例2: up
import org.jgroups.Event; //导入方法依赖的package包/类
@Override
public Object up(Event event) {
int type = event.getType();
if (displayUpMessages) {
if (type == Event.MSG) {
Message msg = (Message) event.getArg();
if (msg != null) {
byte[] buffer = msg.getBuffer();
if (buffer != null) {
log.info(">>>" + new String(buffer));
}
}
}
}
return up_prot.up(event);
}
示例3: down
import org.jgroups.Event; //导入方法依赖的package包/类
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);
}
示例4: down
import org.jgroups.Event; //导入方法依赖的package包/类
/**
* Fragment a packet if larger than frag_size (add a header). Otherwise just pass down. Only
* add a header if framentation is needed !
*/
public Object down(Event evt) {
switch(evt.getType()) {
case Event.MSG:
Message msg=(Message)evt.getArg();
long size=msg.size();
num_sent_msgs++;
if(size > frag_size) {
if(log.isTraceEnabled()) {
StringBuilder sb=new StringBuilder("message size is ");
sb.append(size).append(", will fragment (frag_size=").append(frag_size).append(')');
log.trace(sb.toString());
}
fragment(msg, size); // Fragment and pass down
return null;
}
break;
case Event.VIEW_CHANGE:
handleViewChange((View)evt.getArg());
break;
}
return down_prot.down(evt); // Pass on to the layer below us
}
示例5: up
import org.jgroups.Event; //导入方法依赖的package包/类
/**
* If event is a message, if it is fragmented, re-assemble fragments into big message and pass up the stack.
*/
public Object up(Event evt) {
switch(evt.getType()) {
case Event.MSG:
Message msg=(Message)evt.getArg();
FragHeader hdr=(FragHeader)msg.getHeader(this.id);
if(hdr != null) { // needs to be defragmented
Message assembled_msg=unfragment(msg, hdr);
if(assembled_msg != null) {
if(log.isTraceEnabled()) log.trace("%s: assembled_msg is %s", local_addr, assembled_msg);
assembled_msg.setSrc(msg.getSrc()); // needed ? YES, because fragments have a null src !!
up_prot.up(new Event(Event.MSG, assembled_msg));
}
return null;
}
break;
case Event.VIEW_CHANGE:
handleViewChange((View)evt.getArg());
break;
}
return up_prot.up(evt); // Pass up to the layer above us by default
}
示例6: up
import org.jgroups.Event; //导入方法依赖的package包/类
public Object up(Event evt) {
switch(evt.getType()) {
case Event.VIEW_CHANGE:
handleView((View)evt.getArg());
break;
}
if(num_event_handlers > 0) {
for(EventHandler handler: event_handlers) {
try {
handler.up(evt);
}
catch(Throwable t) {
log.error("event handler failed handling up event", t);
}
}
}
return up_prot.up(evt);
}
示例7: up
import org.jgroups.Event; //导入方法依赖的package包/类
public Object up(Event evt) {
if(!up)
return up_prot.up(evt);
if(evt.getType() != Event.MSG)
return up_prot.up(evt);
Message msg=(Message)evt.getArg();
synchronized(up_msgs) {
up_msgs.add(msg);
}
if(up_msgs.size() >= max_size) {
shuffleAndSendMessages();
}
else
startTask();
return null;
}
示例8: down
import org.jgroups.Event; //导入方法依赖的package包/类
public Object down(Event evt) {
if(!down)
return down_prot.down(evt);
if(evt.getType() != Event.MSG)
return down_prot.down(evt);
Message msg=(Message)evt.getArg();
synchronized(down_msgs) {
down_msgs.add(msg);
}
if(down_msgs.size() >= max_size) {
shuffleAndSendMessages();
}
else
startTask();
return null;
}
示例9: up
import org.jgroups.Event; //导入方法依赖的package包/类
/**
* If there is no header, we pass the message up. Otherwise we uncompress the payload to its original size.
* @param evt
*/
public Object up(Event evt) {
if(evt.getType() == Event.MSG) {
Message msg=(Message)evt.getArg();
CompressHeader hdr=(CompressHeader)msg.getHeader(this.id);
if(hdr != null) {
Message uncompressed_msg=uncompress(msg, hdr.original_size);
if(uncompressed_msg != null) {
if(log.isTraceEnabled())
log.trace("up(): uncompressed " + msg.getLength() + " bytes to " + uncompressed_msg.getLength() + " bytes");
return up_prot.up(new Event(Event.MSG, uncompressed_msg));
}
}
}
return up_prot.up(evt);
}
示例10: up
import org.jgroups.Event; //导入方法依赖的package包/类
@Override
public Object up(Event evt) {
switch (evt.getType()) {
case Event.MSG:
Message msg = (Message) evt.getArg();
processForMulticast(msg, INCOMING);
processForUnicast(msg, INCOMING);
filter(msg, INCOMING);
}
return up_prot.up(evt);
}
示例11: down
import org.jgroups.Event; //导入方法依赖的package包/类
@Override
public Object down(Event evt) {
switch (evt.getType()) {
case Event.MSG:
Message msg = (Message) evt.getArg();
processForMulticast(msg, OUTGOING);
processForUnicast(msg, OUTGOING);
filter(msg, OUTGOING);
break;
}
do {
try {
return down_prot.down(evt);
} catch (RejectedExecutionException e) {
logger
.debug("retrying JGroups message transmission due to rejected execution (GEODE-1178)");
try {
Thread.sleep(10);
} catch (InterruptedException ie) {
// down() does not throw InterruptedException so we can only set the interrupt flag and
// return
Thread.currentThread().interrupt();
return null;
}
}
} while (services != null && !services.getManager().shutdownInProgress()
&& !services.getCancelCriterion().isCancelInProgress());
return null;
}
示例12: down
import org.jgroups.Event; //导入方法依赖的package包/类
@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);
}
示例13: down
import org.jgroups.Event; //导入方法依赖的package包/类
public Object down(Event evt) {
if(evt.getType() == Event.MSG) {
Message msg=(Message)evt.getArg();
int length=msg.getLength();
num_msgs_in_period.incrementAndGet();
bytes_in_period.addAndGet(length);
}
return null;
}
示例14: up
import org.jgroups.Event; //导入方法依赖的package包/类
public Object up(Event evt) {
if(evt.getType() == Event.SUSPECT) {
Address suspect=(Address)evt.getArg();
long diff=System.currentTimeMillis() - start;
map.put(suspect, diff);
System.out.println("[" + diff + "] evt = " + evt);
}
return null;
}
示例15: down
import org.jgroups.Event; //导入方法依赖的package包/类
public Object down(Event evt) {
boolean copy=(copy_multicast_msgs || copy_unicast_msgs) && outgoing_copies > 0;
if(!copy)
return down_prot.down(evt);
switch(evt.getType()) {
case Event.MSG:
Message msg=(Message)evt.getArg();
copy(msg, outgoing_copies, Direction.DOWN);
break;
}
return down_prot.down(evt);
}