def __init__(self, task):
        super(DefaultTaskDecomposer, self).__init__(task)

        if task.arguments is None:
            # Create an empty command anyway --> probably unecessary
            print "WARNING: No arguments given for the task \"%s\", it is necessary to do this ? (we are creating an empty command anyway..." % task.name
            self.task.addCommand(task.name + "_1_1", {})

        elif all(key in task.arguments for key in (self.START_LABEL, self.END_LABEL)) \
                or self.FRAMESLIST_LABEL in task.arguments:
            # if standard attributes exist in arguments, use the PuliHelper to decompose accordingly

            start = task.arguments.get(self.START_LABEL, 1)
            end = task.arguments.get(self.END_LABEL, 1)
            packetSize = task.arguments.get(self.PACKETSIZE_LABEL, 1)
            framesList = task.arguments.get(self.FRAMESLIST_LABEL, "")

            self.decompose(start=start, end=end, packetSize=packetSize, callback=self, framesList=framesList)

        else:
            # If arguments given but no standard behaviour, simply transmit task arguments to single command
            self.task.addCommand(task.name, task.arguments)
Test throttling while flushing
dataset/ETHPy150Open mikrosimage/OpenRenderManagement/src/puliclient/jobs.py/DefaultTaskDecomposer.__init__--crossover with--dataset/ETHPy150Open serverdensity/sd-agent/tests/core/test_transaction.py/TestTransaction.testThrottling