public function generateFullKey(string $key = ''): string
    {
        if (!$this->context || !$this->identifier) {
            throw new \InvalidArgumentException('You have to run setContext and setIdentifier methods first');
        }

        return implode('_', [
            static::class,
            $this->context,
            $this->identifier,
            $key,
        ]);
    }