Example #1
0
    async def removeMaintenances(
            self,
            request: RemoveMaintenancesRequest) -> RemoveMaintenancesResponse:
        mnts = [mnt for _, mnt in self._maintenances_by_id.items()]
        if request.filter:
            mnts = self._filter_mnts(mnts, request.filter)

        if not mnts:
            raise MaintenanceMatchError()

        for mnt in mnts:
            del self._maintenances_by_id[mnt.group_id]

        return RemoveMaintenancesResponse(maintenances=mnts)
Example #2
0
    async def removeMaintenances(
        self, request: RemoveMaintenancesRequest
    ) -> RemoveMaintenancesResponse:
        mnts = [mnt for _, mnt in self._maintenances_by_id.items()]
        if request.filter:
            mnts = self._filter_mnts(mnts, request.filter)

        if not mnts:
            raise MaintenanceMatchError()

        for mnt in mnts:
            assert mnt.group_id is not None
            # pyre-fixme[6]: Expected `str` for 1st param but got `Optional[str]`.
            del self._maintenances_by_id[mnt.group_id]

        return RemoveMaintenancesResponse(maintenances=mnts)