⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 toolkit.jca

📁 基于Java开发的SATSA源代码
💻 JCA
📖 第 1 页 / 共 4 页
字号:
			public static final short ALLOWED_LENGTH_EXCEEDED = 10;		// S
			public static final short NO_TIMER_AVAILABLE = 11;		// S
			public static final short INVALID_TIMER_ID = 12;		// S
			public static final short EVENT_NOT_ALLOWED = 13;		// S
			public static final short BAD_INPUT_PARAMETER = 14;		// S
			private static ToolkitException systemInstance;		// Lsim/toolkit/ToolkitException;
		}

		.publicMethodTable 3 {
			equals(Ljava/lang/Object;)Z;
			getReason()S;
			setReason(S)V;
		}

		.packageMethodTable 0 {
		}

		.method public <init>(S)V 0 {
			.stack 2;
			.locals 0;

				L0:	aload_0;
					sload_1;
					invokespecial 18;		// javacard/framework/CardRuntimeException.<init>(S)V
					getstatic_a 19;		// reference sim/toolkit/ToolkitException.systemInstance
					ifnonnull L2;
				L1:	aload_0;
					putstatic_a 19;		// reference sim/toolkit/ToolkitException.systemInstance
				L2:	return;
		}

		.method public static throwIt(S)V 1 {
			.stack 2;
			.locals 0;

				L0:	getstatic_a 19;		// reference sim/toolkit/ToolkitException.systemInstance
					sload_0;
					invokevirtual 20;		// javacard/framework/CardRuntimeException.setReason(S)V
					getstatic_a 19;		// reference sim/toolkit/ToolkitException.systemInstance
					athrow;
		}

	}

	.class public final EnvelopeHandler 9 extends ViewHandler {

		.publicMethodTable 14 {
			equals(Ljava/lang/Object;)Z;
			getLength()S;
			copy([BSS)S;
			findTLV(BB)B;
			getValueLength()S;
			getValueByte(S)B;
			copyValue(S[BSS)S;
			compareValue(S[BSS)B;
			findAndCopyValue(B[BS)S;
			findAndCopyValue(BBS[BSS)S;
			findAndCompareValue(B[BS)B;
			findAndCompareValue(BBS[BSS)B;
			getTLVOffset([BBSS)S;
			getLastTLVOffset([BS)S;
			getEnvelopeTag()B;
			getTPUDLOffset()S;
			getSecuredDataOffset()S;
			getSecuredDataLength()S;
			getItemIdentifier()B;
		}

		.packageMethodTable 0 {
		}

		.method private <init>()V {
			.stack 1;
			.locals 0;

				L0:	aload_0;
					invokespecial 10;		// sim/toolkit/ViewHandler.<init>()V
					return;
		}

		.method public static getTheHandler()Lsim/toolkit/EnvelopeHandler; 0 {
			.stack 2;
			.locals 1;

				L0:	new 21;		// sim/toolkit/EnvelopeHandler
					dup;
					invokespecial 22;		// sim/toolkit/EnvelopeHandler.<init>()V
					astore_0;
					aload_0;
					bspush 7;
					putfield_s 1;		// short sim/toolkit/ViewHandler.firstTLVOffset
					aload_0;
					bspush 7;
					putfield_s 0;		// short sim/toolkit/ViewHandler.currentTLVOffset
					aload_0;
					areturn;
		}

		.method public getEnvelopeTag()B 14 {
			.stack 2;
			.locals 1;

				L0:	getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					invokeinterface 1 14 0;		// sim/toolkit/AccessSAT
					astore_1;
					aload_1;
					sconst_5;
					baload;
					sreturn;
		}

		.method public getTPUDLOffset()S 15 {
			.stack 5;
			.locals 3;

				L0:	getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					invokeinterface 1 14 0;		// sim/toolkit/AccessSAT
					astore_1;
					aload_1;
					sconst_4;
					baload;
					sstore_2;
					aload_0;
					aload_1;
					bspush 11;
					sload_2;
					sconst_1;
					invokevirtual 6;		// sim/toolkit/ViewHandler.getTLVOffset([BBSS)S
					sstore_3;
					sload_3;
					sload_2;
					if_scmplt L2;
				L1:	sconst_3;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
				L2:	aload_0;
					sload_3;
					putfield_s 0;		// short sim/toolkit/ViewHandler.currentTLVOffset
					sconst_0;
					sreturn;
		}

		.method public getSecuredDataOffset()S 16 {
			.stack 1;
			.locals 0;

				L0:	sconst_0;
					sreturn;
		}

		.method public getSecuredDataLength()S 17 {
			.stack 1;
			.locals 0;

				L0:	sconst_0;
					sreturn;
		}

		.method public getItemIdentifier()B 18 {
			.stack 2;
			.locals 1;

				L0:	getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					invokeinterface 1 14 0;		// sim/toolkit/AccessSAT
					astore_1;
					aload_0;
					getfield_s_this 1;		// short sim/toolkit/ViewHandler.firstTLVOffset
					putfield_s 0;		// short sim/toolkit/ViewHandler.currentTLVOffset
					aload_1;
					getfield_s_this 1;		// short sim/toolkit/ViewHandler.firstTLVOffset
					baload;
					sreturn;
		}

	}

	.class public final ToolkitRegistry 10 extends 0.0 {		// extends java/lang/Object

		.publicMethodTable 1 {
			equals(Ljava/lang/Object;)Z;
			setEvent(B)V;
			setEventList([BSS)V;
			clearEvent(B)V;
			isEventSet(B)Z;
			disableMenuEntry(B)V;
			enableMenuEntry(B)V;
			initMenuEntry([BSSBZBS)B;
			changeMenuEntry(B[BSSBZBS)V;
			allocateTimer()B;
			releaseTimer(B)V;
			requestPollInterval(S)V;
			getPollInterval()S;
		}

		.packageMethodTable 0 {
		}

		.method private <init>()V {
			.stack 1;
			.locals 0;

				L0:	aload_0;
					invokespecial 15;		// java/lang/Object.<init>()V
					return;
		}

		.method public static getEntry()Lsim/toolkit/ToolkitRegistry; 0 {
			.stack 2;
			.locals 0;

				L0:	new 23;		// sim/toolkit/ToolkitRegistry
					dup;
					invokespecial 24;		// sim/toolkit/ToolkitRegistry.<init>()V
					areturn;
		}

		.method public setEvent(B)V 1 {
			.stack 2;
			.locals 1;

				L0:	sload_1;
					sconst_4;
					if_scmpeq L2;
				L1:	bspush 6;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
				L2:	invokestatic 25;		// javacard/framework/JCSystem.getAID()Ljavacard/framework/AID;
					astore_2;
					getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					aload_2;
					invokeinterface 2 14 3;		// sim/toolkit/AccessSAT
					return;
		}

		.method public setEventList([BSS)V 2 {
			.stack 2;
			.locals 3;

				L0:	sconst_0;
					sstore 4;
					sconst_0;
					sstore 5;
					goto L6;
				L1:	aload_1;
					sload 5;
					baload;
					sconst_4;
					if_scmpeq L3;
				L2:	bspush 6;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
				L3:	sload 4;
					ifne L5;
				L4:	invokestatic 25;		// javacard/framework/JCSystem.getAID()Ljavacard/framework/AID;
					astore 6;
					getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					aload 6;
					invokeinterface 2 14 3;		// sim/toolkit/AccessSAT
					sconst_1;
					sstore 4;
				L5:	sinc 5 1;
				L6:	sload 5;
					aload_1;
					arraylength;
					if_scmplt L1;
				L7:	return;
		}

		.method public clearEvent(B)V 3 {
			.stack 2;
			.locals 1;

				L0:	sload_1;
					sconst_4;
					if_scmpeq L2;
				L1:	return;
				L2:	invokestatic 25;		// javacard/framework/JCSystem.getAID()Ljavacard/framework/AID;
					astore_2;
					getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					aload_2;
					invokeinterface 2 14 4;		// sim/toolkit/AccessSAT
					return;
		}

		.method public isEventSet(B)Z 4 {
			.stack 2;
			.locals 1;

				L0:	sload_1;
					sconst_4;
					if_scmpeq L2;
				L1:	sconst_0;
					sreturn;
				L2:	invokestatic 25;		// javacard/framework/JCSystem.getAID()Ljavacard/framework/AID;
					astore_2;
					getstatic_a 9;		// reference sim/toolkit/ViewHandler.SATAccessor
					aload_2;
					invokeinterface 2 14 5;		// sim/toolkit/AccessSAT
					sreturn;
		}

		.method public disableMenuEntry(B)V 5 {
			.stack 1;
			.locals 0;

				L0:	sconst_4;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					return;
		}

		.method public enableMenuEntry(B)V 6 {
			.stack 1;
			.locals 0;

				L0:	sconst_4;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					return;
		}

		.method public initMenuEntry([BSSBZBS)B 7 {
			.stack 1;
			.locals 0;

				L0:	sconst_5;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					sconst_0;
					sreturn;
		}

		.method public changeMenuEntry(B[BSSBZBS)V 8 {
			.stack 1;
			.locals 0;

				L0:	sconst_4;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					return;
		}

		.method public allocateTimer()B 9 {
			.stack 1;
			.locals 0;

				L0:	bspush 11;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					sconst_0;
					sreturn;
		}

		.method public releaseTimer(B)V 10 {
			.stack 1;
			.locals 0;

				L0:	bspush 12;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					return;
		}

		.method public requestPollInterval(S)V 11 {
			.stack 1;
			.locals 0;

				L0:	sconst_5;
					invokestatic 16;		// sim/toolkit/ToolkitException.throwIt(S)V
					return;
		}

		.method public getPollInterval()S 12 {
			.stack 1;
			.locals 0;

				L0:	sconst_0;
					sreturn;
		}

	}

	.class public final ProactiveHandler 11 extends EditHandler {

		.publicMethodTable 20 {
			equals(Ljava/lang/Object;)Z;
			getLength()S;
			copy([BSS)S;
			findTLV(BB)B;
			getValueLength()S;
			getValueByte(S)B;
			copyValue(S[BSS)S;
			compareValue(S[BSS)B;
			findAndCopyValue(B[BS)S;
			findAndCopyValue(BBS[BSS)S;
			findAndCompareValue(B[BS)B;
			findAndCompareValue(BBS[BSS)B;
			getTLVOffset([BBSS)S;
			getLastTLVOffset([BS)S;
			clear()V;
			appendArray([BSS)V;
			appendTLV(B[BSS)V;
			appendTLV(BB)V;
			appendTLV(BBB)V;
			appendTLV(BB[BSS)V;
			init(BBB)V;
			send()B;
			initDisplayText(BB[BSS)V;
			initGetInkey(BB[BSS)V;
			initGetInput(BB[BSSSS)V;
		}

		.packageMethodTable 0 {
		}

		.method private <init>()V {
			.stack 1;
			.locals 0;

				L0:	aload_0;
					invokespecial 11;		// sim/toolkit/EditHandler.<init>()V
					return;
		}

		.method public static getTheHandler()Lsim/toolkit/ProactiveHandler; 0 {
			.stack 1;
			.locals 0;

				L0:	aconst_null;
					areturn;
		}

		.method public init(BBB)V 20 {
			.stack 0;
			.locals 0;

				L0:	return;
		}

		.method public send()B 21 {
			.stack 1;
			.locals 0;

				L0:	sconst_0;
					sreturn;
		}

		.method public initDisplayText(BB[BSS)V 22 {
			.stack 0;
			.locals 0;

				L0:	return;
		}

		.method public initGetInkey(BB[BSS)V 23 {
			.stack 0;
			.locals 0;

				L0:	return;
		}

		.method public initGetInput(BB[BSSSS)V 24 {
			.stack 0;
			.locals 0;

				L0:	return;
		}

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -