protected boolean sendAck(int tag,boolean status,int gridletId,int destId)
    {
        boolean success = false;
        switch (tag)
        {
            case GridSimTags.GRIDLET_PAUSE_ACK:
            case GridSimTags.GRIDLET_RESUME_ACK:
            case GridSimTags.GRIDLET_SUBMIT_ACK:

                int[] array = new int[ARRAY_SIZE];
                array[0] = gridletId;
                if (status) {
                    array[1] = GridSimTags.TRUE;
                }
                else {
                    array[1] = GridSimTags.FALSE;
                }

                super.sim_schedule( outputPort_, GridSimTags.SCHEDULE_NOW, tag,
                                    new IO_data(array, 8, destId) );
                success = true;
                break;

            default:
                System.out.println(super.get_name() +
                                   ".sendAck(): Invalid tag ID.");
                break;
        }

        return success;
    }