示例#1
0
文件: job.py 项目: srbhss/OpenCue
    def getUpdatedFrames(self, lastCheck, layers=None):
        """Returns a list of updated state information for frames that have
        changed since the last update time as well as the current state of the
        job. If layer proxies are provided in the layers list, only frames from
        those layers will be returned.

        UpdatedFrameCheckResult::

            CueIce::JobState state =
            int updated =
            UpdatedFrameSeq updatedFrames =

        :type  lastCheck: int
        :param lastCheck: Epoch when last updated
        :type  layers: list<job_pb2.Layer>
        :param layers: List of layers to check, empty list checks all
        :rtype:  job_pb2.UpdatedFrameCheckResult
        :return: Job state and a list of updatedFrames"""
        if layers is not None:
            layerSeq = job_pb2.LayerSeq()
            layerSeq.layers.extend(layers)
        else:
            layerSeq = None
        return self.stub.GetUpdatedFrames(
            job_pb2.JobGetUpdatedFramesRequest(job=self.data, last_check=lastCheck,
                                               layer_filter=layerSeq),
            timeout=Cuebot.Timeout)
示例#2
0
    def testGetUpdatedFrames(self, getStubMock):
        stubMock = mock.Mock()
        stubMock.GetUpdatedFrames.return_value = job_pb2.JobGetUpdatedFramesResponse(
            state=job_pb2.FINISHED,
            server_time=987654321,
            updated_frames=job_pb2.UpdatedFrameSeq(
                updated_frames=[job_pb2.UpdatedFrame(id='uuu-uuuu-uuu')]))
        getStubMock.return_value = stubMock

        lastCheck = 123456789
        job = opencue.wrappers.job.Job(
            job_pb2.Job(name=TEST_JOB_NAME))
        framesResponse = job.getUpdatedFrames(lastCheck)

        stubMock.GetUpdatedFrames.assert_called_with(
            job_pb2.JobGetUpdatedFramesRequest(job=job.data, last_check=lastCheck,
                                               layer_filter=None),
            timeout=mock.ANY)
        self.assertEqual(framesResponse.state, job_pb2.FINISHED)
        self.assertEqual(len(framesResponse.updated_frames.updated_frames), 1)
示例#3
0
    def getUpdatedFrames(self, lastCheck, layers=None):
        """Returns a list of state information for frames that have been recently updated.

        This includes any frames that have changed since the last update time as well as the
        current state of the job. If layer proxies are provided in the layers list, only frames
        from those layers will be returned.

        :type  lastCheck: int
        :param lastCheck: epoch when last updated
        :type  layers: list<job_pb2.Layer>
        :param layers: list of layers to check, empty list checks all
        :rtype:  job_pb2.JobGetUpdatedFramesResponse
        :return: job state and a list of updated frames
        """
        if layers is not None:
            layerSeq = job_pb2.LayerSeq()
            # pylint: disable=no-member
            layerSeq.layers.extend(layers)
            # pylint: enable=no-member
        else:
            layerSeq = None
        return self.stub.GetUpdatedFrames(job_pb2.JobGetUpdatedFramesRequest(
            job=self.data, last_check=lastCheck, layer_filter=layerSeq),
                                          timeout=Cuebot.Timeout)