<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def is_parent_of_catalog(self, id_, catalog_id):
 """Tests if an ``Id`` is a direct parent of a catalog. arg: id (osid.id.Id):
 an ``Id`` arg: catalog_id (osid.id.Id):
 the ``Id`` of a catalog return: (boolean) - ``true`` if this ``id`` is a parent of ``catalog_id,`` ``false`` otherwise raise: NotFound - ``catalog_id`` is not found raise: NullArgument - ``id`` or ``catalog_id`` is ``null`` raise: OperationFailed - unable to complete request raise: PermissionDenied - authorization failure occurred *compliance: mandatory -- This method must be implemented.* *implementation notes*: If ``id`` not found return ``false``. """

        # Implemented from template for
        # osid.resource.BinHierarchySession.is_parent_of_bin
        if self._catalog_session is not None:
            return self._catalog_session.is_parent_of_catalog(id_=id_, catalog_id=catalog_id)
        return self._hierarchy_session.is_parent(id_=catalog_id, parent_id=id_)