private EngineSettings()
{
}
/// <summary>
/// Initialises a new engine settings with the supplied values
/// </summary>
/// <param name="defaultSavePath">The default path to save downloaded material to</param>
/// <param name="listenPort">The port to listen for incoming connections on</param>
public EngineSettings(string defaultSavePath, int listenPort)
: this(defaultSavePath, listenPort, DefaultUseuPnP, DefaultMaxConnections, DefaultMaxHalfOpenConnections, DefaultMaxDownloadSpeed, DefaultMaxUploadSpeed, DefaultMinLevel, DefaultAllowLegacyConnections)
{
}
/// <summary>
/// Initialises a new engine settings with the supplied values
/// </summary>
/// <param name="defaultSavePath">The default path to save downloaded material to</param>
/// <param name="listenPort">The port to listen for incoming connections on</param>
/// <param name="useuPnP">True if uPnP should be used to map the listen port</param>
public EngineSettings(string defaultSavePath, int listenPort, bool useuPnP)
: this(defaultSavePath, listenPort, useuPnP, DefaultMaxConnections, DefaultMaxHalfOpenConnections, DefaultMaxDownloadSpeed, DefaultMaxUploadSpeed, DefaultMinLevel, DefaultAllowLegacyConnections)
{
}
/// <summary>
/// Initialises a new engine settings with the supplied values
/// </summary>
/// <param name="globalMaxConnections">The overall maximum number of open connections allowed</param>
/// <param name="defaultSavePath">The default path to save downloaded material to</param>
/// <param name="listenPort">The port to listen for incoming connections on</param>
/// <param name="useuPnP">True if uPnP should be used to map the listen port</param>
public EngineSettings(string defaultSavePath, int listenPort, bool useuPnP, int globalMaxConnections)
: this(defaultSavePath, listenPort, useuPnP, globalMaxConnections, DefaultMaxHalfOpenConnections, DefaultMaxDownloadSpeed, DefaultMaxUploadSpeed, DefaultMinLevel, DefaultAllowLegacyConnections)
{
}
/// <summary>
/// Initialises a new engine settings with the supplied values
/// </summary>
/// <param name="globalMaxConnections">The overall maximum number of open connections allowed</param>
/// <param name="globalHalfOpenConnections">The overall maximum number of half open connections</param>
/// <param name="defaultSavePath">The default path to save downloaded material to</param>
/// <param name="listenPort">The port to listen for incoming connections on</param>
/// <param name="useuPnP">True if uPnP should be used to map the listen port</param>
public EngineSettings(string defaultSavePath, int listenPort, bool useuPnP, int globalMaxConnections, int globalHalfOpenConnections)
: this(defaultSavePath, listenPort, useuPnP, globalMaxConnections, globalHalfOpenConnections, DefaultMaxDownloadSpeed, DefaultMaxUploadSpeed, DefaultMinLevel, DefaultAllowLegacyConnections)
{
}
/// <summary>
/// Initialises a new engine settings with the supplied values
/// </summary>
/// <param name="globalMaxConnections">The overall maximum number of open connections allowed</param>
/// <param name="globalMaxDownloadSpeed">The overall maximum download speed</param>
/// <param name="globalMaxUploadSpeed">The overall maximum upload speed</param>
/// <param name="globalHalfOpenConnections">The overall maximum number of half open connections</param>
/// <param name="defaultSavePath">The default path to save downloaded material to</param>
/// <param name="listenPort">The port to listen for incoming connections on</param>
/// <param name="useuPnP">True if uPnP should be used to map the listen port</param>
/// <param name="allowLegacyConnections">True if incoming connections without encryption should be accepted when encryption is enabled</param>
/// <param name="minEncryption">The minimum level of encryption to use for outgoing connections</param>
public EngineSettings(string defaultSavePath, int listenPort, bool useuPnP, int globalMaxConnections, int globalHalfOpenConnections, int globalMaxDownloadSpeed, int globalMaxUploadSpeed, EncryptionType minEncryption, bool allowLegacyConnections)
{
this.allowLegacyConnections = allowLegacyConnections;
this.globalMaxConnections = globalMaxConnections;
this.globalMaxDownloadSpeed = globalMaxDownloadSpeed;
this.globalMaxUploadSpeed = globalMaxUploadSpeed;
this.globalMaxHalfOpenConnections = globalHalfOpenConnections;
this.listenPort = listenPort;
this.minEncryptionLevel = minEncryption;
this.savePath = defaultSavePath;
this.useuPnP = useuPnP;
}