private ChannelRef PreProcess <TRequest>(AffinityConfig affinityConfig, TRequest request) { // Gets the affinity bound key if required in the request method. string boundKey = null; if (affinityConfig != null && affinityConfig.Command == AffinityConfig.Types.Command.Bound) { boundKey = GetAffinityKeysFromProto(affinityConfig.AffinityKey, (IMessage)request).SingleOrDefault(); } ChannelRef channelRef = GetChannelRef(boundKey); channelRef.ActiveStreamCountIncr(); return(channelRef); }
private Tuple <ChannelRef, string> PreProcess <TRequest>(AffinityConfig affinityConfig, TRequest request) { // Gets the affinity bound key if required in the request method. string boundKey = null; if (affinityConfig != null) { if (affinityConfig.Command == AffinityConfig.Types.Command.Bound || affinityConfig.Command == AffinityConfig.Types.Command.Unbind) { boundKey = GetAffinityKeyFromProto(affinityConfig.AffinityKey, (IMessage)request); } } ChannelRef channelRef = GetChannelRef(boundKey); channelRef.ActiveStreamCountIncr(); return(new Tuple <ChannelRef, string>(channelRef, boundKey)); }