def run(self):
        self.init_env()
        self.init_arguments()
        config = self.parse_config()

        rabbit_mq_endpoint = ServiceEndpoint.from_string(
            self.RABBIT_MQ_ENDPOINT)
        self._connection = pika.BlockingConnection(
            pika.ConnectionParameters(host=rabbit_mq_endpoint.host_ip,
                                      port=rabbit_mq_endpoint.port))
        self._channel = self._connection.channel()

        self.delete_queue()
        self.create_rabbit_mq_queues(self._rabbitmq_endpoint_argument)

        self._task_receiver = RabbitMQExecutedTaskReceiver(
            rabbit_mq_endpoint, self.RABBITMQ_SCALING_RESPONSE_QUEUE_NAME)

        self.receive_empty()
        self.write_content_to_queue()
        time.sleep(2)
        self.receive_content()

        self._task_receiver.close()
 def create_response_receiver(self):
     return RabbitMQExecutedTaskReceiver(
         self._rabbitmq_endpoint, self.RABBITMQ_SCALING_RESPONSE_QUEUE_NAME)