private Dictionary <TypeID, ICommandProcessMessage> GetDictionary() { var assemblyType = typeof(RegisterCommandProcessMessage); var packers = new Dictionary <TypeID, ICommandProcessMessage>(); foreach (var type in assemblyType.Assembly.GetTypes()) { if (!type.IsClass) { continue; } if (type.IsAbstract) { continue; } if (typeof(ICommandProcessMessage).IsAssignableFrom(type)) { ICommandProcessMessage p = Activator.CreateInstance(type) as ICommandProcessMessage; packers.Add(p.Type, p); } } return(packers); }
public CommandProcessMessageSmart(RegisterCommandProcessMessage register, IMessage message) { _message = message; _command = register.Find(_message.Type); }