ShadertoySiteOptions constructor
ShadertoySiteOptions({
- String? user,
- String? password,
- String? cookieName,
- int? userShaderCount,
- int? playlistShaderCount,
- int? pageResultsShaderCount,
- int? pageUserShaderCount,
- int? pagePlaylistShaderCount,
- String? baseUrl,
- int? poolMaxAlocatedResources,
- int? poolTimeout,
- int? retryMaxAttempts,
- int? shaderCount,
- ErrorMode? errorHandling,
Builds a ShadertoySiteOptions
- user: The Shadertoy user
- password: The Shadertoy password
cookieName
: The Shadertoy cookie name, defaults to ShadertoySiteOptions.defaultCookieNameuserShaderCount
: The number of shaders requested for a user paged call, defaults to ShadertoySiteOptions.defaultPageUserShaderCountplaylistShaderCount
: The number of shaders requested for a playlist paged call, defaults to ShadertoySiteOptions.defaultPagePlaylistShaderCountpageResultsShaderCount
: The number of shaders presented in the Shadertoy results page, defaults to ShadertoySiteOptions.defaultPageResultsShaderCountpageUserShaderCount
: The number of shaders presented in the Shadertoy user page, defaults to ShadertoySiteOptions.defaultPageUserShaderCountpagePlaylistShaderCount
: The number of shaders presented in the Shadertoy playlist page, defaults to ShadertoySiteOptions.defaultPagePlaylistShaderCountbaseUrl
: The Shadertoy base url- poolMaxAllocatedResources: The maximum number of resources allocated for parallel calls
poolTimeout
: The timeout before giving up on a callretryMaxAttempts
: The maximum number of attempts at a failed requestshaderCount
: The number of shaders fetched in a paged callerrorHandling
: The error handling mode
Implementation
ShadertoySiteOptions(
{this.user,
this.password,
String? cookieName,
int? userShaderCount,
int? playlistShaderCount,
int? pageResultsShaderCount,
int? pageUserShaderCount,
int? pagePlaylistShaderCount,
String? baseUrl,
int? poolMaxAlocatedResources,
int? poolTimeout,
int? retryMaxAttempts,
int? shaderCount,
ErrorMode? errorHandling})
: assert(user == null || user.isNotEmpty, 'user is null or not empty'),
assert(password == null || password.isNotEmpty,
'password is null or not empty'),
cookieName = cookieName ?? defaultCookieName,
userShaderCount = userShaderCount ?? defaultPageUserShaderCount,
playlistShaderCount =
playlistShaderCount ?? defaultPagePlaylistShaderCount,
pageResultsShaderCount =
pageResultsShaderCount ?? defaultPageResultsShaderCount,
pageUserShaderCount = pageUserShaderCount ?? defaultPageUserShaderCount,
pagePlaylistShaderCount =
pagePlaylistShaderCount ?? defaultPagePlaylistShaderCount,
super(
baseUrl: baseUrl,
supportsCookies: true,
poolMaxAllocatedResources: poolMaxAlocatedResources,
poolTimeout: poolTimeout,
retryMaxAttempts: retryMaxAttempts,
shaderCount: shaderCount,
errorHandling: errorHandling) {
assert(this.cookieName.isNotEmpty, 'cookieName is not empty');
assert(this.userShaderCount >= 1,
'userShaderCount is greater or equal to one');
assert(this.playlistShaderCount >= 1);
assert(this.pageResultsShaderCount >= 1,
'pageResultsShaderCount is greater or equal to one');
assert(this.pageUserShaderCount >= 1,
'pageUserShaderCount is greater or equal to one');
assert(this.pagePlaylistShaderCount >= 1,
'pagePlaylistShaderCount is greater or equal to one');
}