MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //home/cafsindia/lead_cafsinfotech.com/vendor/scheb/2fa-bundle/Security/UsernameHelper.php
<?php

declare(strict_types=1);

namespace Scheb\TwoFactorBundle\Security;

use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
use Symfony\Component\Security\Core\User\UserInterface;
use function method_exists;

/**
 * @internal
 *
 * Handles compatibility with different Symfony versions
 *
 * @final
 */
class UsernameHelper
{
    public static function getTokenUsername(TokenInterface $token): string
    {
        // Compatibility with Symfony >= 6.0
        if (method_exists($token, 'getUserIdentifier')) {
            return $token->getUserIdentifier();
        }

        // Compatibility with Symfony <= 6.0
        /** @psalm-suppress RedundantCastGivenDocblockType,UndefinedInterfaceMethod */

        return (string) $token->getUsername();
    }

    public static function getUserUsername(UserInterface $user): string
    {
        // Compatibility with Symfony >= 6.0
        if (method_exists($user, 'getUserIdentifier')) {
            return $user->getUserIdentifier();
        }

        // Compatibility with Symfony <= 6.0
        /** @psalm-suppress RedundantCastGivenDocblockType,UndefinedInterfaceMethod */

        return (string) $user->getUsername();
    }
}