The MultiSelectable interface defines one method to be invoked instead of Applet.select()
when the applet being selected, or any other applet in its package, is already selected on another logical channel:
public boolean MultiSelectable.select(boolean appInstAlreadySelected)
The MultiSelectable.select(boolean)
method informs the applet instance if it is selected more than once on different channels, or if another applet in the same package is selected on another channel on any interface. The parameter appInstAlreadySelected
is true
if the applet is selected on a different channel. It is false
if it is not selected. The method can return either true
or false
to accept or reject applet selection.
This method can be called as a result of issuing a SELECT FILE
or a MANAGE CHANNEL OPEN
APDU command used to select an applet. If the applet is not selected, then the appInstAlreadySelected
parameter is passed as false
to signal an applet activation event. If the applet is subsequently selected on another channel, MultiSelectable.select(boolean)
is called again, but this time, the appInstAlreadySelected
parameter is passed as true
, to indicate that the applet is already active.