@Override public Acr1255UReader createFromParcel(Parcel in) { String name = in.readString(); IBinder binder = in.readStrongBinder(); IAcr1255UReaderControl iin = IAcr1255UReaderControl.Stub.asInterface(binder); return new Acr1255UReader(name, iin); }
/** * Read Auto PPS. * * @return list of Max Tx Speed, Current Tx Speed, Max Rx Speed, Current Rx Speed */ public List<AcrCommunicationSpeed> getAutoPPS() { byte[] response; try { response = readerControl.getAutoPPS(); } catch (RemoteException e) { throw new AcrReaderException(e); } byte[] resultByteArray = readByteArray(response); List<AcrCommunicationSpeed> list = new ArrayList<AcrCommunicationSpeed>(); for(byte b : resultByteArray) { list.add(parse(b)); } return list; }
public List<AcrDefaultLEDAndBuzzerBehaviour> getDefaultLEDAndBuzzerBehaviour() { byte[] response; try { response = readerControl.getDefaultLEDAndBuzzerBehaviour(); } catch (RemoteException e) { throw new AcrReaderException(e); } return parseBehaviour(readInteger(response)); }
public boolean setDefaultLEDAndBuzzerBehaviour(AcrDefaultLEDAndBuzzerBehaviour ... types) { byte[] response; try { int operation = serializeBehaviour(types); response = readerControl.setDefaultLEDAndBuzzerBehaviour(operation); } catch (RemoteException e) { throw new AcrReaderException(e); } return readBoolean(response); }
public boolean setAntennaField(boolean on) { byte[] response; try { response = readerControl.setAntennaField(on); } catch (RemoteException e) { throw new AcrReaderException(e); } return readBoolean(response); }
} else if (reader instanceof Acr1255UReader) { Acr1255UReader acr1255UReader = (Acr1255UReader) reader; acr1255UReader.setPICC( AcrPICC.POLL_ISO14443_TYPE_B, AcrPICC.POLL_ISO14443_TYPE_A ); acr1255UReader.setAutomaticPICCPolling(AcrAutomaticPICCPolling.AUTO_PICC_POLLING, AcrAutomaticPICCPolling.ACTIVATE_PICC_WHEN_DETECTED, AcrAutomaticPICCPolling.ENFORCE_ISO14443A_PART_4);
public String getFirmware() throws AcrReaderException { byte[] response; try { response = readerControl.getFirmware(); } catch (RemoteException e) { throw new AcrReaderException(e); } return readString(response); }
public List<AcrPICC> getPICC() { byte[] response; try { response = readerControl.getPICC(); } catch (RemoteException e) { throw new AcrReaderException(e); } int operation = readInteger(response); ArrayList<AcrPICC> values = new ArrayList<AcrPICC>(); if((operation & POLL_ISO14443_TYPE_B) != 0) { values.add(AcrPICC.POLL_ISO14443_TYPE_B); } if((operation & POLL_ISO14443_TYPE_A) != 0) { values.add(AcrPICC.POLL_ISO14443_TYPE_A); } if((operation & POLL_FELICA_424K) != 0) { values.add(AcrPICC.POLL_FELICA_424K); } if((operation & POLL_FELICA_212K) != 0) { values.add(AcrPICC.POLL_FELICA_212K); } if((operation & POLL_TOPAZ) != 0) { values.add(AcrPICC.POLL_TOPAZ); } return values; }
@Override public byte[] control(int slotNum, int controlCode, byte[] command) { byte[] response; try { response = readerControl.control(slotNum, controlCode, command); } catch (RemoteException e) { throw new AcrReaderException(e); } return readByteArray(response); }
public AcrBluetoothTransmissionPower getBluetoothTransmissionPower() { byte[] response; try { response = readerControl.getBluetoothTransmissionPower(); } catch (RemoteException e) { throw new AcrReaderException(e); } byte status = readByte(response); switch(status) { case BLUETOOTH_TRANSMISSION_POWER_DISTANCE_3M : { return AcrBluetoothTransmissionPower.DISTANCE_3M; } case BLUETOOTH_TRANSMISSION_POWER_DISTANCE_7M : { return AcrBluetoothTransmissionPower.DISTANCE_7M; } case BLUETOOTH_TRANSMISSION_POWER_DISTANCE_17M: { return AcrBluetoothTransmissionPower.DISTANCE_17M; } case BLUETOOTH_TRANSMISSION_POWER_DISTANCE_25M: { return AcrBluetoothTransmissionPower.DISTANCE_25M; } } throw new IllegalArgumentException("Unknown bluetooth transmission power " + Integer.toHexString(status & 0xFF)); }
public boolean setAutoPPS(AcrCommunicationSpeed tx, AcrCommunicationSpeed rx) { byte[] response; try { byte[] speed = new byte[2]; if(tx == AcrCommunicationSpeed.RATE_106_Kbps) { speed[0] = RATE_106K; } else if(tx == AcrCommunicationSpeed.RATE_212_Kbps) { speed[0] = RATE_212K; } else if(tx == AcrCommunicationSpeed.RATE_424_Kbps) { speed[0] = RATE_424K; } else throw new IllegalArgumentException("Unexpected rate " + tx); if(rx == AcrCommunicationSpeed.RATE_106_Kbps) { speed[1] = RATE_106K; } else if(rx == AcrCommunicationSpeed.RATE_212_Kbps) { speed[1] = RATE_212K; } else if(rx == AcrCommunicationSpeed.RATE_424_Kbps) { speed[1] = RATE_424K; } else throw new IllegalArgumentException("Unexpected rate " + rx); response = readerControl.setAutoPPS(speed); } catch (RemoteException e) { throw new AcrReaderException(e); } return readBoolean(response); }
public String getSerialNumber() throws AcrReaderException { byte[] response; try { response = readerControl.getSerialNumber(); } catch (RemoteException e) { throw new AcrReaderException(e); } return readString(response); }
public List<AcrAutomaticPICCPolling> getAutomaticPICCPolling() { byte[] response; try { response = readerControl.getAutomaticPICCPolling(); } catch (RemoteException e) { throw new AcrReaderException(e); } return AcrAutomaticPICCPolling.parse(readInteger(response)); }
@Override public byte[] transmit(int slotNum, byte[] command) { byte[] response; try { response = readerControl.transmit(slotNum, command); } catch (RemoteException e) { throw new AcrReaderException(e); } return readByteArray(response); }
public AcrAntennaFieldStatus getAntennaFieldStatus() { byte[] response; try { response = readerControl.getAntennaFieldStatus(); } catch (RemoteException e) { throw new AcrReaderException(e); } byte status = readByte(response); switch(status) { case PICC_POWER_OFF : { return AcrAntennaFieldStatus.PICC_POWER_OFF; } case PICC_IDLE : { return AcrAntennaFieldStatus.PICC_IDLE; } case PICC_READY: { return AcrAntennaFieldStatus.PICC_READY; } case PICC_SELECTED: { return AcrAntennaFieldStatus.PICC_SELECTED; } case PICC_ACTIVE : { return AcrAntennaFieldStatus.PICC_ACTIVE; } } throw new IllegalArgumentException("Unknown antenna field status " + Integer.toHexString(status & 0xFF)); }
public boolean setLEDs(Set<AcrLED> first, Set<AcrLED> second) { byte[] response; try { int operation = 0; for(AcrLED type : first) { if(type == AcrLED.GREEN) { operation |= LED_1_GREEN; } else if(type == AcrLED.RED) { operation |= LED_1_RED; } else { throw new IllegalArgumentException("LED " + type + " not supported for LED #1"); } } for(AcrLED type : second) { if(type == AcrLED.BLUE) { operation |= LED_2_BLUE; } else if(type == AcrLED.RED) { operation |= LED_2_RED; } else { throw new IllegalArgumentException("LED " + type + " not supported for LED #2"); } } response = readerControl.setLEDs(operation); } catch (RemoteException e) { throw new AcrReaderException(e); } return readBoolean(response); }
throw new AcrReaderException(e); return readBoolean(response);
public boolean setAutomaticPICCPolling(AcrAutomaticPICCPolling ... types) { byte[] response; try { response = readerControl.setAutomaticPICCPolling(AcrAutomaticPICCPolling.serialize(types)); } catch (RemoteException e) { throw new AcrReaderException(e); } return readBoolean(response); }
return readBoolean(response);
return readBoolean(response);