- java.lang.Object
-
- javax.smartcardio.CardTerminal
-
public abstract class CardTerminal extends Object
智能卡终端,有时称为智能卡读卡器。 可通过致电CardTerminals.list()或CardTerminals.getTerminal()获取CardTerminal对象。请注意,具有多卡插槽的物理卡读卡器由每个这样的插槽一个
CardTerminal
对象表示。- 从以下版本开始:
- 1.6
- 另请参见:
-
CardTerminals
,TerminalFactory
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protected
CardTerminal()
构造一个新的CardTerminal对象。
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 abstract Card
connect(String protocol)
建立与卡的连接。abstract String
getName()
返回此终端的唯一名称。abstract boolean
isCardPresent()
返回此终端中是否存在卡。abstract boolean
waitForCardAbsent(long timeout)
等待直到该终端的卡不存在或超时到期。abstract boolean
waitForCardPresent(long timeout)
等待直到某个卡存在于此终端或超时到期。
-
-
-
构造方法详细信息
-
CardTerminal
protected CardTerminal()
构造一个新的CardTerminal对象。此构造函数仅由子类调用。 应用程序应调用list()或getTerminal()获取CardTerminal对象。
-
-
方法详细信息
-
getName
public abstract String getName()
返回此终端的唯一名称。- 结果
- 该终端的唯一名称。
-
connect
public abstract Card connect(String protocol) throws CardException
建立与卡的连接。 如果先前使用指定协议建立连接,则此方法将返回与上一次调用相同的Card对象。- 参数
-
protocol
- 使用协议(“T = 0”,“T = 1”或“T = CL”)或“*”使用任何可用的协议进行连接。 - 结果
- 该卡的连接已建立
- 异常
-
NullPointerException
- 如果协议为空 -
IllegalArgumentException
- 如果协议是无效的协议规范 -
CardNotPresentException
- 如果此终端中没有卡 -
CardException
- 如果使用指定的协议无法建立连接,或者如果先前已使用不同协议建立连接 -
SecurityException
- 如果SecurityManager存在,并且呼叫者没有所需的permission
-
isCardPresent
public abstract boolean isCardPresent() throws CardException
返回此终端中是否存在卡。- 结果
- 该终端中是否存在卡。
- 异常
-
CardException
- 如果状态无法确定
-
waitForCardPresent
public abstract boolean waitForCardPresent(long timeout) throws CardException
等待直到某个卡存在于此终端或超时到期。 如果该方法由于超时超时而返回,则返回false。 否则返回true。如果此方法被调用时,该终端中存在卡,则立即返回。
- 参数
-
timeout
- 如果为正,则阻止最多timeout
毫秒; 如果零,无限期地阻止; 不能是负面的 - 结果
- 如果方法由于超时超时而返回,则为false,否则为true。
- 异常
-
IllegalArgumentException
- 如果超时为负数 -
CardException
- 如果操作失败
-
waitForCardAbsent
public abstract boolean waitForCardAbsent(long timeout) throws CardException
等待直到该终端的卡不存在或超时到期。 如果该方法由于超时超时而返回,则返回false。 否则返回true。如果此方法被调用,则此终端中不存在任何卡,则会立即返回。
- 参数
-
timeout
- 如果为正,则阻止最多timeout
毫秒; 如果零,无限期地阻止; 不能是负面的 - 结果
- 如果方法由于超时超时而返回,则为false,否则为true。
- 异常
-
IllegalArgumentException
- 如果超时为负 -
CardException
- 如果操作失败
-
-