|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
The MultiSelectable interface identifies the
implementing Applet subclass as being capable of concurrent
selections. A multiselectable applet is a subclass of
javacard.framework.Applet which directly or indirectly
implements this interface. All of the applets within an applet
package must be multiselectable. If they are not, then none of the
applets can be multiselectable.
An instance of a multiselectable applet can be selected on one logical channel while the same applet instance or another applet instance from within the same package is active on another logical channel.
The methods of this interface are invoked by the Java Card runtime environment only when:
See Runtime Environment Specification for the Java Card Platform for details.
| Method Summary | |
void |
deselect(boolean appInstStillActive)
Called by the Java Card runtime environment to inform that this currently selected applet instance is being deselected on this logical channel while the same applet instance or another applet instance from the same package is still active on another logical channel. |
boolean |
select(boolean appInstAlreadyActive)
Called by the Java Card runtime environment to inform that this applet instance has been selected while the same applet instance or another applet instance from the same package is active on another logical channel. |
| Method Detail |
public boolean select(boolean appInstAlreadyActive)
It is called either when the MANAGE CHANNEL APDU (open) command or the SELECT APDU command is received and before the applet instance is selected. SELECT APDU commands use instance AID bytes for applet selection. See Runtime Environment Specification for the Java Card Platform, section 4.5 for details.
A subclass of Applet should, within this
method, perform any initialization that may be required to
process APDU commands that may follow. This method returns a
boolean to indicate that it is ready to accept incoming APDU
commands via its process() method. If this method
returns false, it indicates to the Java Card runtime environment
that this applet instance declines to be selected.
Note:
javacard.framework.Applet.select()
method is not called if this method is invoked.
appInstAlreadyActive - boolean flag is true
when the same applet instance is already active on another
logical channel and false otherwise
true if the applet instance accepts
selection, false otherwisepublic void deselect(boolean appInstStillActive)
select() method.
A subclass of Applet should, within this
method, perform any cleanup or bookkeeping work before another
applet instance is selected or the logical channel is closed.
Notes:
javacard.framework.Applet.deselect()
method is not called if this method is invoked.JCSystem.CLEAR_ON_DESELECT clear event
type owned by this applet instance since at least one applet
instance from the same package is still active.
appInstStillActive - boolean flag is true when
the same applet instance is still active on another logical
channel and false otherwise
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||