Get the next available processor of a particular type and increment
        its occupancy counter.

        Args:
            processor_type (ProcessorType): The processor type associated with
                a zmq identity.

        Returns:
            (Processor): Information about the transaction processor

def get_next_of_type(self, processor_type):
        """Get the next available processor of a particular type and increment
        its occupancy counter.

        Args:
            processor_type (ProcessorType): The processor type associated with
                a zmq identity.

        Returns:
            (Processor): Information about the transaction processor
        """
        with self._condition:
            if processor_type not in self:
                self.wait_for_registration(processor_type)
            try:
                processor = self[processor_type].next_processor()
            except NoProcessorVacancyError:
                processor = self.wait_for_vacancy(processor_type)
            processor.inc_occupancy()
            return processor