本文整理汇总了Java中javax.smartcardio.CardTerminal.waitForCardPresent方法的典型用法代码示例。如果您正苦于以下问题:Java CardTerminal.waitForCardPresent方法的具体用法?Java CardTerminal.waitForCardPresent怎么用?Java CardTerminal.waitForCardPresent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.smartcardio.CardTerminal
的用法示例。
在下文中一共展示了CardTerminal.waitForCardPresent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getTerminal
import javax.smartcardio.CardTerminal; //导入方法依赖的package包/类
static CardTerminal getTerminal(String[] args) throws Exception {
setLibrary(args);
TerminalFactory factory = TerminalFactory.getInstance("PC/SC", null);
System.out.println(factory);
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);
if (terminals.isEmpty()) {
throw new Exception("No card terminals available");
}
CardTerminal terminal = terminals.get(0);
if (terminal.isCardPresent() == false) {
System.out.println("*** Insert card");
if (terminal.waitForCardPresent(20 * 1000) == false) {
throw new Exception("no card available");
}
}
return terminal;
}
示例2: create
import javax.smartcardio.CardTerminal; //导入方法依赖的package包/类
public static SmartcardIoTransmitter create() throws CardException {
TerminalFactory tf = TerminalFactory.getDefault();
CardTerminal cardTerminal = null;
if (tf.terminals().list().size() == 1) {
cardTerminal = tf.terminals().list().get(0);
} else {
for (CardTerminal terminal : tf.terminals().list()) {
logger.info("Checking for card: {}", terminal.getName());
if (terminal.isCardPresent()) {
cardTerminal = terminal;
}
}
}
if (cardTerminal != null) {
cardTerminal.waitForCardPresent(0);
} else {
throw new RuntimeException("No card found!");
}
logger.info("Using -> " + cardTerminal.getName());
Card card = cardTerminal.connect("*");
return new SmartcardIoTransmitter(card);
}
示例3: getTerminal
import javax.smartcardio.CardTerminal; //导入方法依赖的package包/类
static CardTerminal getTerminal(String[] args, String provider) throws Exception {
setLibrary(args);
try {
TerminalFactory factory = (provider == null)
? TerminalFactory.getInstance("PC/SC", null)
: TerminalFactory.getInstance("PC/SC", null, provider);
System.out.println(factory);
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);
if (terminals.isEmpty()) {
return null;
}
CardTerminal terminal = terminals.get(0);
if (terminal.isCardPresent() == false) {
System.out.println("*** Insert card");
if (terminal.waitForCardPresent(20 * 1000) == false) {
throw new Exception("no card available");
}
}
System.out.println("card present: " + terminal.isCardPresent());
return terminal;
} catch (NoSuchAlgorithmException e) {
Throwable cause = e.getCause();
if (cause != null && cause.getMessage().startsWith("PC/SC not available")) {
return null;
}
throw e;
}
}