예제 #1
0
        void IImplementedMessageTypeCache <TMessage> .EnumerateImplementedTypes(IImplementedMessageType implementedMessageType, bool includeActualType)
        {
            for (var i = 0; i < _implementedTypes.Length; i++)
            {
                if (_implementedTypes[i].MessageType == typeof(TMessage) && !includeActualType)
                {
                    continue;
                }

                _implementedTypes[i].ImplementsType(implementedMessageType);
            }
        }
예제 #2
0
 /// <summary>
 /// Enumerate the implemented message types
 /// </summary>
 /// <param name="implementedMessageType">The interface reference to invoke for each type</param>
 /// <param name="includeActualType">Include the actual message type first, before any implemented types</param>
 public static void EnumerateImplementedTypes(IImplementedMessageType implementedMessageType, bool includeActualType = false)
 {
     Cached.Instance.Value.EnumerateImplementedTypes(implementedMessageType, includeActualType);
 }
예제 #3
0
 void CachedType.ImplementsType(IImplementedMessageType implementedMessageType)
 {
     implementedMessageType.ImplementsMessageType <TAdapter>(Direct);
 }