package mixconfig.tools.dataretention.smartcard.commands;

import com.sun.javacard.apduio.Apdu;

import mixconfig.tools.dataretention.smartcard.ApduConstants;
import mixconfig.tools.dataretention.smartcard.Helpers;

public class DataTransmissionCommand extends AbstractCommand {

	/**
	 * If the value is any higher, it causes a ArrayOutOfBoundsException in
	 * {@link Apdu#getCommandApduBytes()}. Probably due to a cast from signed
	 * integer to signed byte.
	 */
	public static final byte bytesPerDataTransmisionCommand = 127;

	public DataTransmissionCommand(byte[] data, int offset) {
		super();

		this.instruction = ApduConstants.INSTRUCTION_DATA_TRANSMISSION;
		this.arguments = Helpers.copyOfRange(data, offset, bytesPerDataTransmisionCommand);
	}

}
