. * * The interactive user interfaces in modified source and object code versions * of this program must display Appropriate Legal Notices, as required under * Section 5 of the GNU Affero General Public License version 3. * * In accordance with Section 7(b) of the GNU Affero General Public License version 3, * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ namespace Espo\Core\Authentication\Login; /** * Immutable. */ class MetadataParams { private string $method; private ?string $credentialsHeader; private bool $api; public function __construct( string $method, ?string $credentialsHeader = null, bool $api = false ) { $this->method = $method; $this->credentialsHeader = $credentialsHeader; $this->api = $api; } /** * @param array $data */ public static function fromRaw(string $method, array $data): self { return new self( $method, $data['credentialsHeader'] ?? null, $data['api'] ?? false, ); } public function getMethod(): string { return $this->method; } public function getCredentialsHeader(): ?string { return $this->credentialsHeader; } public function isApi(): bool { return $this->api; } }