@Override public void receivedDeterministicHierarchy(HardwareWalletEvent event) { switch (state) { case CREDENTIALS_ENTER_PIN_FROM_MASTER_PUBLIC_KEY: // Fall through since there may have been no PIN request case CREDENTIALS_REQUEST_MASTER_PUBLIC_KEY: // A successful get master public key has been performed log.debug("CREDENTIALS_REQUEST_MASTER_PUBLIC_KEY was successful"); // Transition to request a cipher key (to provide entropy). // This will most likely trigger a PIN request state = CredentialsState.CREDENTIALS_REQUEST_CIPHER_KEY; break; default: log.info( "Message:'Operation succeeded'\n{}", event.getMessage().get() ); } }
@Override public void showOperationFailed(HardwareWalletEvent event) { if (!event.getMessage().isPresent()) { // This could be due to a detach return; } Failure failure = (Failure) event.getMessage().get(); switch (state) { case HARDWARE_CREATE_WALLET_REQUEST_CREATE_WALLET: switch (failure.getType()) { case UNEXPECTED_MESSAGE: // Device was in the middle of something and needs to be re-initialised state = WELCOME_SELECT_WALLET; break; default: // User does not want to create a new wallet state = WELCOME_SELECT_WALLET; } break; case HARDWARE_CREATE_WALLET_CONFIRM_CREATE_WALLET: // User does not want to create a new wallet state = WELCOME_SELECT_WALLET; break; default: } }
@Override public void showButtonPress(HardwareWalletEvent event) { log.debug("Received hardware event: '{}'.{}", event.getEventType().name(), event.getMessage()); // Ensure we transition to the confirm screen state = SignMessageState.SIGN_MESSAGE_HARDWARE_CONFIRM_SIGN; }
@Override public void showOperationSucceeded(HardwareWalletEvent event) { switch (state) { case CONFIRM_WIPE_DEVICE: // Indicate a successful wipe state= UseHardwareWalletState.USE_HARDWARE_WALLET_REPORT_PANEL; setReportMessageKey(MessageKey.HARDWARE_WIPE_DEVICE_SUCCESS); setReportMessageStatus(true); SwingUtilities.invokeLater( new Runnable() { @Override public void run() { // Let MainController know about this ViewEvents.fireComponentChangedEvent(UseHardwareWalletState.CONFIRM_WIPE_DEVICE.name(), Optional.of(Dates.nowUtc())); } }); break; default: // Do nothing - see #603 log.info("Message:'Operation succeeded'\n{}", event.getMessage().get()); } }
if (event.getMessage().get() instanceof CipheredKeyValue) { byte[] payload = ((CipheredKeyValue) event.getMessage().get()).getPayload().get(); log.info("Message:'Operation succeeded'\n{}", event.getMessage().get());
@Override public void showButtonPress(HardwareWalletEvent event) { log.debug("Received hardwareWalletEvent {}", event); ButtonRequest buttonRequest = (ButtonRequest) event.getMessage().get(); switch (state) { case ENTER_PIN: case NO_PIN_REQUIRED: // Should be catered for by finish break; case REQUEST_WIPE_DEVICE: switch (buttonRequest.getButtonRequestType()) { case WIPE_DEVICE: // Device requires confirmation to wipe state = UseHardwareWalletState.CONFIRM_WIPE_DEVICE; break; default: throw new IllegalStateException("Unexpected button: " + buttonRequest.getButtonRequestType().name()); } break; case VERIFY_DEVICE: // Should be catered for by finish on Verify Trezor panel case USE_HARDWARE_WALLET_REPORT_PANEL: // Should be catered for by finish on Trezor report panel break; default: throw new IllegalStateException("Unknown state: " + state.name()); } }
PinMatrixRequest request = (PinMatrixRequest) event.getMessage().get(); PinMatrixRequestType requestType = request.getPinMatrixRequestType();
PinMatrixRequest request = (PinMatrixRequest) event.getMessage().get(); PinMatrixRequestType requestType = request.getPinMatrixRequestType();
if (event.getMessage().orNull() == null || !(event.getMessage().orNull() instanceof Failure)) { handleRestart(hardwareWalletService); return; final Failure failure = (Failure) event.getMessage().orNull(); if (failure == null) { handleRestart(hardwareWalletService);
if (event.getMessage().isPresent()) { final HardwareWalletMessage message = event.getMessage().get(); if (message instanceof Features) {
if (event.getMessage().isPresent()) { Features features = (Features) event.getMessage().get(); label=features.getLabel();
MessageSignature signature = (MessageSignature) event.getMessage().get();
@Override public void showButtonPress(HardwareWalletEvent event) { ButtonRequest buttonRequest = (ButtonRequest) event.getMessage().get();
public void onHardwareWalletEvent(HardwareWalletEvent event) throws GetIdentitiesFailedException { Logger.getLogger(DeviceService.class.getName()).log(Level.INFO, "Received USB event: {0}", new Object[]{event.getEventType().name()}); Logger.getLogger(DeviceService.class.getName()).log(Level.FINE, "Received USB event message: {0}", new Object[]{event.getMessage()}); this.deviceLabel = ((Features) event.getMessage().get()).getLabel(); break; PinMatrixRequest request = (PinMatrixRequest) event.getMessage().get(); String pin; switch (request.getPinMatrixRequestType()) { case PUBLIC_KEY_FOR_IDENTITY: PublicKey pubKey = (PublicKey) event.getMessage().get(); String openSSHkey; SignedIdentity signature = (SignedIdentity) event.getMessage().get(); getAsyncKeyData().setDeviceData(AgentConstants.GET_IDENTITIES_FAILED_STRING); Failure failure = (Failure) event.getMessage().get();
lastHardwareWalletEvent.get().getMessage().get(), lastHardwareWalletEvent.get().getSource() );
@Override public void showButtonPress(HardwareWalletEvent event) { ButtonRequest buttonRequest = (ButtonRequest) event.getMessage().get();
@Override public void showButtonPress(HardwareWalletEvent event) { log.debug("Received hardware event: '{}'.{}", event.getEventType().name(), event.getMessage()); ButtonRequest buttonRequest = (ButtonRequest) event.getMessage().get();
@Override public void showButtonPress(HardwareWalletEvent event) { log.debug("Received hardware event: '{}'.{}", event.getEventType().name(), event.getMessage()); ButtonRequest buttonRequest = (ButtonRequest) event.getMessage().get();