public static function getRepositoryClassnameByReference($reference)
    {
        $parts = explode(':', $reference);

        // Check name is string
        if (!is_string($reference) || count($parts) !== 3) {
            throw new \Exception("Invalid Repository Class Reference. Repository reference should consist of 3 parts separated by colon, for example v1:Products:MyRepository");
        }

        return $parts[0] . '\\' . $parts[1] . '\\' . 'Entity\\' . $parts[2];
    }