/** * @param wizardModel The overall wizard data model containing the aggregate information of all components in the wizard * @param isExiting True if the exit button should trigger an application shutdown * @param wizardParameter An optional parameter that can be referenced during construction * @param escapeIsCancel A press of the ESC key cancels the wizard */ protected AbstractHardwareWalletWizard(M wizardModel, boolean isExiting, Optional wizardParameter, boolean escapeIsCancel) { super(wizardModel, isExiting, wizardParameter, escapeIsCancel); // All hardware wallet wizards can receive hardware wallet events HardwareWalletEvents.subscribe(this); }
@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 onFailure(Throwable t) { log.error("Failed to complete 'message' event: {}", event.getEventType().name(), t); } });
@Override public Boolean call() { log.debug("Firing 'message' event: {} for {}", event.getEventType().name(), event.getSource()); messageEventBus.post(event); // Must be OK to be here return true; } });
@Override public Boolean call() { log.debug("Firing 'hardware wallet' event: {} for {}", eventType.name(), source); hardwareWalletEventBus.post( new HardwareWalletEvent( eventType, Optional.<HardwareWalletMessage>absent(), source)); // Must be OK to be here return true; } });
@Override protected void internalTransition(HardwareWalletClient client, HardwareWalletContext context, MessageEvent event) { switch (event.getEventType()) { // TODO Implement default: handleUnexpectedMessageEvent(context, event); } } }
@Override public void onFailure(Throwable t) { log.error("Failed to complete 'hardware wallet' event: {}", eventType.name(), t); } });
@Override public void onFailure(Throwable t) { log.error("Failed to complete 'message' event: {}", messageEventType.name(), t); } });
@Override public void hidFailure(HidServicesEvent event) { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_FAILED, name()); } }
/** * Unregister from hardware wallet events - called during the hide process */ @Override public void unsubscribe() { super.unsubscribe(); HardwareWalletEvents.unsubscribe(this); }
@Override protected boolean startInternal() { HardwareWalletEvents.subscribe(this); isRegistered = true; return false; }
@Override public void onSuccess(Boolean result) { log.debug("Completed 'message' event: {}", event.getEventType().name()); }
@Override protected void internalTransition(HardwareWalletClient client, HardwareWalletContext context, MessageEvent event) { switch (event.getEventType()) { // TODO Implement default: handleUnexpectedMessageEvent(context, event); } } }
@Override public void onFailure(Throwable t) { log.error("Failed to complete 'hardware wallet' event: {}", eventType.name(), t); } });
@Override public void onSuccess(Boolean result) { log.debug("Completed 'message' event: {}", messageEventType.name()); }
@Override public boolean connect() { if (socket != null) { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_CONNECTED, name()); return true; } else { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_DISCONNECTED, name()); return false; } }
private void create(KeepKeyV1HidHardwareWallet hardwareWallet, int portNumber) { this.hardwareWallet = hardwareWallet; this.portNumber = portNumber; // Subscribe to the high level events from the client HardwareWalletEvents.subscribe(this); serverExecutorService.submit( new Runnable() { @Override public void run() { start(); } }); }
@Override public void hidFailure(HidServicesEvent event) { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_FAILED, name()); }
private void create(TrezorV1HidHardwareWallet hardwareWallet, int portNumber) { this.hardwareWallet = hardwareWallet; this.portNumber = portNumber; // Subscribe to the high level events from the client HardwareWalletEvents.subscribe(this); serverExecutorService.submit( new Runnable() { @Override public void run() { start(); } }); }
@Override public boolean connect() { if (socket != null) { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_CONNECTED, name()); return true; } else { MessageEvents.fireMessageEvent(MessageEventType.DEVICE_DISCONNECTED, name()); return false; } }