Search in sources :

Example 21 with Message

use of org.apache.geode.internal.cache.tier.sockets.Message in project geode by apache.

the class PutAll70 method writeReplyWithRefreshMetadata.

private void writeReplyWithRefreshMetadata(Message origMsg, VersionedObjectList response, ServerConnection servConn, PartitionedRegion pr, byte nwHop) throws IOException {
    Message replyMsg = servConn.getReplyMessage();
    servConn.getCache().getCancelCriterion().checkCancelInProgress(null);
    replyMsg.setMessageType(MessageType.REPLY);
    replyMsg.setNumberOfParts(2);
    replyMsg.setTransactionId(origMsg.getTransactionId());
    replyMsg.addBytesPart(new byte[] { pr.getMetadataVersion(), nwHop });
    if (response != null) {
        response.clearObjects();
        replyMsg.addObjPart(response);
    }
    replyMsg.send(servConn);
    pr.getPrStats().incPRMetaDataSentCount();
    if (logger.isTraceEnabled()) {
        logger.trace("{}: rpl with REFRESH_METADATA tx: {}", servConn.getName(), origMsg.getTransactionId());
    }
}
Also used : Message(org.apache.geode.internal.cache.tier.sockets.Message) LocalizedMessage(org.apache.geode.internal.logging.log4j.LocalizedMessage)

Example 22 with Message

use of org.apache.geode.internal.cache.tier.sockets.Message in project geode by apache.

the class Invalidate70 method writeReplyWithRefreshMetadata.

@Override
protected void writeReplyWithRefreshMetadata(Message origMsg, ServerConnection servConn, PartitionedRegion pr, byte nwHop, VersionTag versionTag) throws IOException {
    Message replyMsg = servConn.getReplyMessage();
    servConn.getCache().getCancelCriterion().checkCancelInProgress(null);
    replyMsg.setMessageType(MessageType.REPLY);
    int flags = 0;
    int numParts = 2;
    if (versionTag != null) {
        flags |= InvalidateOp.HAS_VERSION_TAG;
        numParts++;
    }
    replyMsg.setNumberOfParts(numParts);
    replyMsg.setTransactionId(origMsg.getTransactionId());
    replyMsg.addIntPart(flags);
    if (versionTag != null) {
        replyMsg.addObjPart(versionTag);
    }
    replyMsg.addBytesPart(new byte[] { pr.getMetadataVersion(), nwHop });
    pr.getPrStats().incPRMetaDataSentCount();
    replyMsg.send(servConn);
    if (logger.isTraceEnabled()) {
        logger.trace("{}: rpl with REFRESH_METADATA tx: {}", servConn.getName(), origMsg.getTransactionId());
    }
}
Also used : Message(org.apache.geode.internal.cache.tier.sockets.Message)

Example 23 with Message

use of org.apache.geode.internal.cache.tier.sockets.Message in project geode by apache.

the class Destroy65 method writeReplyWithRefreshMetadata.

protected void writeReplyWithRefreshMetadata(Message origMsg, ServerConnection servConn, PartitionedRegion pr, boolean entryNotFoundForRemove, byte nwHop, VersionTag tag) throws IOException {
    Message replyMsg = servConn.getReplyMessage();
    servConn.getCache().getCancelCriterion().checkCancelInProgress(null);
    replyMsg.setMessageType(MessageType.REPLY);
    replyMsg.setNumberOfParts(2);
    replyMsg.setTransactionId(origMsg.getTransactionId());
    replyMsg.addBytesPart(new byte[] { pr.getMetadataVersion(), nwHop });
    pr.getPrStats().incPRMetaDataSentCount();
    replyMsg.addIntPart(entryNotFoundForRemove ? 1 : 0);
    replyMsg.send(servConn);
    if (logger.isTraceEnabled()) {
        logger.trace("{}: rpl with REFRESH_METADATA tx: {}", servConn.getName(), origMsg.getTransactionId());
    }
}
Also used : Message(org.apache.geode.internal.cache.tier.sockets.Message) LocalizedMessage(org.apache.geode.internal.logging.log4j.LocalizedMessage)

Example 24 with Message

use of org.apache.geode.internal.cache.tier.sockets.Message in project geode by apache.

the class GatewayReceiverCommand method writeReply.

private void writeReply(Message msg, ServerConnection servConn, int batchId, int numberOfEvents) throws IOException {
    Message replyMsg = servConn.getResponseMessage();
    replyMsg.setMessageType(MessageType.REPLY);
    replyMsg.setTransactionId(msg.getTransactionId());
    replyMsg.setNumberOfParts(2);
    replyMsg.addIntPart(batchId);
    replyMsg.addIntPart(numberOfEvents);
    replyMsg.setTransactionId(msg.getTransactionId());
    replyMsg.send(servConn);
    servConn.setAsTrue(Command.RESPONDED);
    if (logger.isDebugEnabled()) {
        logger.debug("{}: rpl tx: {} batchId {} numberOfEvents: {}", servConn.getName(), msg.getTransactionId(), batchId, numberOfEvents);
    }
}
Also used : Message(org.apache.geode.internal.cache.tier.sockets.Message) LocalizedMessage(org.apache.geode.internal.logging.log4j.LocalizedMessage)

Example 25 with Message

use of org.apache.geode.internal.cache.tier.sockets.Message in project geode by apache.

the class Get70 method writeResponseWithRefreshMetadata.

private void writeResponseWithRefreshMetadata(@Unretained Object data, Object callbackArg, Message origMsg, boolean isObject, ServerConnection servConn, PartitionedRegion pr, byte nwHop, VersionTag versionTag, boolean keyNotPresent) throws IOException {
    Message responseMsg = servConn.getResponseMessage();
    responseMsg.setMessageType(MessageType.RESPONSE);
    responseMsg.setTransactionId(origMsg.getTransactionId());
    int numParts = 3;
    int flags = 0;
    if (callbackArg != null) {
        numParts++;
        flags |= GetOp.HAS_CALLBACK_ARG;
    }
    if (versionTag != null) {
        numParts++;
        flags |= GetOp.HAS_VERSION_TAG;
    }
    if (keyNotPresent) {
        flags |= GetOp.KEY_NOT_PRESENT;
    } else if (data == null && isObject) {
        flags |= GetOp.VALUE_IS_INVALID;
    }
    // logger.debug("returning flags " + Integer.toBinaryString(flags));
    responseMsg.setNumberOfParts(numParts);
    responseMsg.addPartInAnyForm(data, isObject);
    responseMsg.addIntPart(flags);
    if (callbackArg != null) {
        responseMsg.addObjPart(callbackArg);
    }
    if (versionTag != null) {
        responseMsg.addObjPart(versionTag);
    }
    responseMsg.addBytesPart(new byte[] { pr.getMetadataVersion(), nwHop });
    servConn.getCache().getCancelCriterion().checkCancelInProgress(null);
    responseMsg.send(servConn);
    origMsg.clearParts();
}
Also used : Message(org.apache.geode.internal.cache.tier.sockets.Message)

Aggregations

Message (org.apache.geode.internal.cache.tier.sockets.Message)33 LocalizedMessage (org.apache.geode.internal.logging.log4j.LocalizedMessage)16 IOException (java.io.IOException)11 InternalCache (org.apache.geode.internal.cache.InternalCache)7 Region (org.apache.geode.cache.Region)4 PartitionedRegion (org.apache.geode.internal.cache.PartitionedRegion)4 TypeRegistry (org.apache.geode.pdx.internal.TypeRegistry)4 EnumInfo (org.apache.geode.pdx.internal.EnumInfo)3 PdxType (org.apache.geode.pdx.internal.PdxType)3 List (java.util.List)2 Cache (org.apache.geode.cache.Cache)2 PartitionResolver (org.apache.geode.cache.PartitionResolver)2 BucketServerLocation66 (org.apache.geode.internal.cache.BucketServerLocation66)2 CachedRegionHelper (org.apache.geode.internal.cache.tier.CachedRegionHelper)2 PdxConfigurationException (org.apache.geode.pdx.PdxConfigurationException)2 PdxRegistryMismatchException (org.apache.geode.pdx.PdxRegistryMismatchException)2 ArrayList (java.util.ArrayList)1 CancelCriterion (org.apache.geode.CancelCriterion)1 CancelException (org.apache.geode.CancelException)1 CacheClosedException (org.apache.geode.cache.CacheClosedException)1