public function parseArn()

in src/EndpointV2/Ruleset/RulesetStandardLibrary.php [230:260]


    public function parseArn($arnString)
    {
        if (is_null($arnString)
            || substr( $arnString, 0, 3 ) !== "arn"
        ) {
            return null;
        }

        $arn = [];
        $parts = explode(':', $arnString, 6);
        if (sizeof($parts) < 6) {
            return null;
        }

        $arn['partition'] = isset($parts[1]) ? $parts[1] : null;
        $arn['service'] = isset($parts[2]) ? $parts[2] : null;
        $arn['region'] = isset($parts[3]) ? $parts[3] : null;
        $arn['accountId'] = isset($parts[4]) ? $parts[4] : null;
        $arn['resourceId'] = isset($parts[5]) ? $parts[5] : null;

        if (empty($arn['partition'])
            || empty($arn['service'])
            || empty($arn['resourceId'])
        ) {
            return null;
        }
        $resource = $arn['resourceId'];
        $arn['resourceId'] = preg_split("/[:\/]/", $resource);

        return $arn;
    }