Пример #1
0
 def get_batch_definition_list_from_batch_request(
     self,
     batch_request: BatchRequest,
 ) -> List[BatchDefinition]:
     batch_data: Any = batch_request.batch_data
     batch_request = BatchRequest(batch_data=batch_data,
                                  **batch_request.get_json_dict()
                                  )  # Make sure that attributes are valid.
     batch_request_base: BatchRequestBase = cast(BatchRequestBase,
                                                 batch_request)
     return self._get_batch_definition_list_from_batch_request(
         batch_request=batch_request_base)
    def get_batch_definition_list_from_batch_request(
        self,
        batch_request: BatchRequest,
    ) -> List[BatchDefinition]:
        """
        Retrieve batch_definitions and that match batch_request.

        First retrieves all batch_definitions that match batch_request
            - if batch_request also has a partition_query, then select batch_definitions that match partition_query.
            - if data_connector has sorters configured, then sort the batch_definition list before returning.

        Args:
            batch_request (BatchRequest): BatchRequest (containing previously validated attributes) to process

        Returns:
            A list of BatchDefinition objects that match BatchRequest

        """
        batch_request = BatchRequest(**batch_request.get_json_dict()
                                     )  # Make sure that attributes are valid.
        batch_request_base: BatchRequestBase = cast(BatchRequestBase,
                                                    batch_request)
        return self._get_batch_definition_list_from_batch_request(
            batch_request=batch_request_base)