class PollRunCompleteResult(RemoteRunResult, PollResult): state: TaskHandlerState = field(metadata=restrict_to( TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollRunCompleteResult'], base: RemoteRunResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollRunCompleteResult': return cls( raw_sql=base.raw_sql, compiled_sql=base.compiled_sql, node=base.node, timing=base.timing, logs=logs, table=base.table, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, )
class PollCatalogCompleteResult(RemoteCatalogResults, PollResult): state: TaskHandlerState = field(metadata=restrict_to( TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollCatalogCompleteResult'], base: RemoteCatalogResults, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollCatalogCompleteResult': return cls( nodes=base.nodes, sources=base.sources, generated_at=base.generated_at, errors=base.errors, _compile_results=base._compile_results, logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, )
class PollFreshnessResult(RemoteFreshnessResult, PollResult): state: TaskHandlerState = field( metadata=restrict_to(TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollFreshnessResult'], base: RemoteFreshnessResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollFreshnessResult': return cls( logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, metadata=base.metadata, results=base.results, elapsed_time=base.elapsed_time, )
class QueueTimeoutMessage(QueueMessage): message_type: QueueMessageType = field(metadata=restrict_to( QueueMessageType.Timeout), ) @classmethod def create(cls): return cls(message_type=QueueMessageType.Timeout)
class PollRunOperationCompleteResult( RemoteRunOperationResult, PollResult, ): state: TaskHandlerState = field( metadata=restrict_to(TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollRunOperationCompleteResult'], base: RemoteRunOperationResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollRunOperationCompleteResult': return cls( success=base.success, results=base.results, generated_at=base.generated_at, elapsed_time=base.elapsed_time, logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, )
class QueueResultMessage(QueueMessage): message_type: QueueMessageType = field( metadata=restrict_to(QueueMessageType.Result)) result: RemoteResult @classmethod def from_result(cls, result: RemoteResult): return cls( message_type=QueueMessageType.Result, result=result, )
class QueueErrorMessage(QueueMessage): message_type: QueueMessageType = field( metadata=restrict_to(QueueMessageType.Error)) error: JSONRPCError @classmethod def from_error(cls, error: JSONRPCError): return QueueErrorMessage( message_type=QueueMessageType.Error, error=error, )
class QueueLogMessage(QueueMessage): message_type: QueueMessageType = field( metadata=restrict_to(QueueMessageType.Log)) record: logbook.LogRecord @classmethod def from_record(cls, record: logbook.LogRecord): return QueueLogMessage( message_type=QueueMessageType.Log, record=record, )
class PollRemoteEmptyCompleteResult(PollResult, RemoteEmptyResult): state: TaskHandlerState = field(metadata=restrict_to( TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollRemoteEmptyCompleteResult'], base: RemoteEmptyResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollRemoteEmptyCompleteResult': return cls( logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, )
class PollGetManifestResult(GetManifestResult, PollResult): state: TaskHandlerState = field(metadata=restrict_to( TaskHandlerState.Success, TaskHandlerState.Failed), ) @classmethod def from_result( cls: Type['PollGetManifestResult'], base: GetManifestResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollGetManifestResult': return cls( manifest=base.manifest, logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, )
class PollRemoteEmptyCompleteResult(PollResult, RemoteResult): state: TaskHandlerState = field( metadata=restrict_to(TaskHandlerState.Success, TaskHandlerState.Failed), ) generated_at: datetime = field(default_factory=datetime.utcnow) @classmethod def from_result( cls: Type['PollRemoteEmptyCompleteResult'], base: RemoteDepsResult, tags: TaskTags, timing: TaskTiming, logs: List[LogMessage], ) -> 'PollRemoteEmptyCompleteResult': return cls( logs=logs, tags=tags, state=timing.state, start=timing.start, end=timing.end, elapsed=timing.elapsed, generated_at=base.generated_at )
class PollKilledResult(PollResult): state: TaskHandlerState = field(metadata=restrict_to( TaskHandlerState.Killed), )