using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SuperSocket.SocketBase.Provider { /// /// Provider factory infomation /// [Serializable] public class ProviderFactoryInfo { /// /// Gets the key. /// public ProviderKey Key { get; set; } /// /// Gets or sets the name. /// /// /// The name. /// public string Name { get; set; } /// /// Gets or sets the export factory. /// /// /// The export factory. /// public ExportFactory ExportFactory { get; set; } /// /// Initializes a new instance of the class. /// public ProviderFactoryInfo() { } /// /// Initializes a new instance of the class. /// /// The key. /// The name. /// The instance. public ProviderFactoryInfo(ProviderKey key, string name, object instance) { Key = key; Name = name; ExportFactory = new ExportFactory(instance); } /// /// Initializes a new instance of the class. /// /// The key. /// The name. /// Name of the type. public ProviderFactoryInfo(ProviderKey key, string name, string typeName) { Key = key; Name = name; ExportFactory = new ExportFactory(typeName); } /// /// Initializes a new instance of the class. /// /// The key. /// The name. /// The type. public ProviderFactoryInfo(ProviderKey key, string name, Type type) : this(key, name, type.AssemblyQualifiedName) { } } }