private function validatePermission($permission)
    {
        $validPermissions = static::getResourceValidPermissions();
        $result = '';
        foreach ($validPermissions as $validPermission) {
            if (strpos($permission, $validPermission) !== false) {
                //append the valid permission to result.
                $result .= $validPermission;
                //remove all the character that represents the permission.
                $permission = str_replace(
                    $validPermission,
                    '',
                    $permission
                );
            }
        }
        //After filtering all the permissions, if there is still characters
        //left in the given permission, throw exception.
        Validate::isTrue(
            $permission == '',
            sprintf(
                Resources::INVALID_PERMISSION_PROVIDED,
                $this->getResourceType(),
                implode(', ', $validPermissions)
            )
        );

        return $result;
    }
private function validatePermission($permission)
    {
        $validPermissions = static::getResourceValidPermissions();
        $result = '';
        foreach ($validPermissions as $validPermission) {
            if (strpos($permission, $validPermission) !== false) {
                //append the valid permission to result.
                $result .= $validPermission;
                //remove all the character that represents the permission.
                $permission = str_replace(
                    $validPermission,
                    '',
                    $permission
                );
            }
        }
        //After filtering all the permissions, if there is still characters
        //left in the given permission, throw exception.
        Validate::isTrue(
            $permission == '',
            sprintf(
                Resources::INVALID_PERMISSION_PROVIDED,
                $this->getResourceType(),
                implode(', ', $validPermissions)
            )
        );

        return $result;
    }
private function validatePermission ( $ permission ) { $ validPermissions = static :: getResourceValidPermissions ( ) ; $ result = '' ; foreach ( $ validPermissions as $ validPermission ) { if ( strpos ( $ permission , $ validPermission ) !== false ) { //append the valid permission to result. $ result .= $ validPermission ; //remove all the character that represents the permission. $ permission = str_replace ( $ validPermission , '' , $ permission ) ; } } //After filtering all the permissions, if there is still characters //left in the given permission, throw exception. Validate :: isTrue ( $ permission == '' , sprintf ( Resources :: INVALID_PERMISSION_PROVIDED , $ this -> getResourceType ( ) , implode ( ', ' , $ validPermissions ) ) ) ; return $ result ; }
Validate the permission against its corresponding allowed permissions

@param  string $permission The permission to be validated.

@throws \InvalidArgumentException

@return string
Validate the permission against its corresponding allowed permissions