eZ\Publish\Core\Persistence\Legacy\User\Role\Gateway\DoctrineDatabase::deleteRole PHP Method

deleteRole() public method

If it's not a draft, the role assignments will also be deleted.
public deleteRole ( mixed $roleId, integer $status = Role::STATUS_DEFINED )
$roleId mixed
$status integer One of Role::STATUS_DEFINED|Role::STATUS_DRAFT
    public function deleteRole($roleId, $status = Role::STATUS_DEFINED)
    {
        $deleteRoleQuery = $this->handler->createDeleteQuery();
        if ($status !== Role::STATUS_DRAFT) {
            $deleteAssignmentsQuery = $this->handler->createDeleteQuery();
            $deleteAssignmentsQuery->deleteFrom($this->handler->quoteTable('ezuser_role'))->where($deleteAssignmentsQuery->expr->eq($this->handler->quoteColumn('role_id'), $deleteAssignmentsQuery->bindValue($roleId, null, \PDO::PARAM_INT)));
            $draftCondition = $deleteRoleQuery->expr->eq($this->handler->quoteColumn('version', 'ezrole'), $deleteRoleQuery->bindValue(Role::STATUS_DEFINED, null, \PDO::PARAM_INT));
        } else {
            $draftCondition = $deleteRoleQuery->expr->neq($this->handler->quoteColumn('version', 'ezrole'), $deleteRoleQuery->bindValue(Role::STATUS_DEFINED, null, \PDO::PARAM_INT));
        }
        $deleteRoleQuery->deleteFrom($this->handler->quoteTable('ezrole'))->where($deleteRoleQuery->expr->lAnd($deleteRoleQuery->expr->eq($this->handler->quoteColumn('id'), $deleteRoleQuery->bindValue($roleId, null, \PDO::PARAM_INT)), $draftCondition));
        if ($status !== Role::STATUS_DRAFT) {
            $deleteAssignmentsQuery->prepare()->execute();
        }
        $deleteRoleQuery->prepare()->execute();
    }