class BackupCode implements JsonSerializable (View source)

A container for a backup code and its hash, normally used during backup code generation

Traits

A class that can be instantiated or replaced via DI

Properties

protected string $code
protected string $hash
protected string $algorithm
protected string $salt

Methods

public static 
create(mixed ...$args)

An implementation of the factory method, allows you to create an instance of a class

public static 
singleton(string $class = null)

Creates a class instance by the "singleton" design pattern.

public
__construct(string $code, string $hash, string $algorithm, string $salt)

No description

public
string
getCode()

No description

public
string
getHash()

No description

public
string
getAlgorithm()

No description

public
string
getSalt()

No description

public
bool
isValid()

Checks whether the provided code matches a set of provided salt, hash, and algorithm, using the internal PasswordEncryptor API.

public
array
jsonSerialize()

Note: deliberately does not include "code", as this is the data that is stored in DB records

Details

static Injectable create(mixed ...$args)

An implementation of the factory method, allows you to create an instance of a class

This method will defer class substitution to the Injector API, which can be customised via the Config API to declare substitution classes.

This can be called in one of two ways - either calling via the class directly, or calling on Object and passing the class name as the first parameter. The following are equivalent: $list = DataList::create(SiteTree::class); $list = SiteTree::get();

Parameters

mixed ...$args

Return Value

Injectable

static Injectable singleton(string $class = null)

Creates a class instance by the "singleton" design pattern.

It will always return the same instance for this class, which can be used for performance reasons and as a simple way to access instance methods which don't rely on instance data (e.g. the custom SilverStripe static handling).

Parameters

string $class

Optional classname to create, if the called class should not be used

Return Value

Injectable

The singleton instance

__construct(string $code, string $hash, string $algorithm, string $salt)

No description

Parameters

string $code
string $hash
string $algorithm
string $salt

string getCode()

No description

Return Value

string

string getHash()

No description

Return Value

string

string getAlgorithm()

No description

Return Value

string

string getSalt()

No description

Return Value

string

bool isValid()

Checks whether the provided code matches a set of provided salt, hash, and algorithm, using the internal PasswordEncryptor API.

Return Value

bool

array jsonSerialize()

Note: deliberately does not include "code", as this is the data that is stored in DB records

Return Value

array