summaryrefslogtreecommitdiff
path: root/smccSTALExt/src/main/java/at/gv
diff options
context:
space:
mode:
Diffstat (limited to 'smccSTALExt/src/main/java/at/gv')
-rw-r--r--smccSTALExt/src/main/java/at/gv/egiz/bku/pin/gui/ManagementPINProvider.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/smccSTALExt/src/main/java/at/gv/egiz/bku/pin/gui/ManagementPINProvider.java b/smccSTALExt/src/main/java/at/gv/egiz/bku/pin/gui/ManagementPINProvider.java
index 89a349b4..fb571495 100644
--- a/smccSTALExt/src/main/java/at/gv/egiz/bku/pin/gui/ManagementPINProvider.java
+++ b/smccSTALExt/src/main/java/at/gv/egiz/bku/pin/gui/ManagementPINProvider.java
@@ -94,4 +94,27 @@ public class ManagementPINProvider extends AbstractPINProvider implements Modify
}
return gui.getPin();
}
+
+@Override
+public char[] providePUK(PinInfo pinInfo, PinInfo pukInfo, int retries)
+ throws CancelledException, InterruptedException {
+ gui.showPUKDialog(type, pinInfo, pukInfo, (retry) ? retries : -1,
+ this, "change",
+ this, "cancel");
+
+ log.trace("[{}] wait for action.", Thread.currentThread().getName());
+ waitForAction();
+ log.trace("[{}] received action {}.", Thread.currentThread().getName(), action);
+
+ gui.showMessageDialog(BKUGUIFacade.TITLE_WAIT,
+ BKUGUIFacade.MESSAGE_WAIT);
+
+ if ("cancel".equals(action)) {
+ throw new CancelledException(pukInfo.getLocalizedName() +
+ " entry cancelled");
+ }
+ retry = true;
+ return gui.getOldPin();
+}
+
}