using System; using System.Collections.Generic; using System.Linq; using System.Text; using SuperSocket.SocketBase.Logging; using SuperSocket.SocketBase.Command; using SuperSocket.SocketBase.Protocol; namespace SuperSocket.SocketBase.Provider { /// /// ProviderKey /// [Serializable] public class ProviderKey { /// /// Gets or sets the name. /// /// /// The name. /// public string Name { get; private set; } /// /// Gets or sets the type. /// /// /// The type. /// public Type Type { get; private set; } private ProviderKey() { } static ProviderKey() { ServerType = new ProviderKey { Name = "ServerType", Type = typeof(IAppServer) }; SocketServerFactory = new ProviderKey { Name = "SocketServerFactory", Type = typeof(ISocketServerFactory) }; ConnectionFilter = new ProviderKey { Name = "ConnectionFilter", Type = typeof(IConnectionFilter) }; LogFactory = new ProviderKey { Name = "LogFactory", Type = typeof(ILogFactory) }; ReceiveFilterFactory = new ProviderKey { Name = "ReceiveFilterFactory", Type = typeof(IReceiveFilterFactory) }; CommandLoader = new ProviderKey { Name = "CommandLoader", Type = typeof(ICommandLoader) }; } /// /// Gets the service. /// public static ProviderKey ServerType { get; private set; } /// /// Gets the socket server factory. /// public static ProviderKey SocketServerFactory { get; private set; } /// /// Gets the connection filter. /// public static ProviderKey ConnectionFilter { get; private set; } /// /// Gets the log factory. /// public static ProviderKey LogFactory { get; private set; } /// /// Gets the Receive filter factory. /// public static ProviderKey ReceiveFilterFactory { get; private set; } /// /// Gets the command loader. /// public static ProviderKey CommandLoader { get; private set; } } }