fr.umlv.corosol.component
Interface JVMComponent

All Superinterfaces:
JObject
All Known Subinterfaces:
JClassLoader, JFieldLookup, JHeap, JHeapAllocator, JInstruction, JInstruction.AALoad, JInstruction.AAStore, JInstruction.AConst_Null, JInstruction.ALoad, JInstruction.ALoad_0, JInstruction.ALoad_1, JInstruction.ALoad_2, JInstruction.ALoad_3, JInstruction.ANewArray, JInstruction.AReturn, JInstruction.ArrayLength, JInstruction.AStore, JInstruction.AStore_0, JInstruction.AStore_1, JInstruction.AStore_2, JInstruction.AStore_3, JInstruction.AThrow, JInstruction.BALoad, JInstruction.BAStore, JInstruction.BIPush, JInstruction.CALoad, JInstruction.CAStore, JInstruction.CheckCast, JInstruction.D2F, JInstruction.D2I, JInstruction.D2L, JInstruction.DAdd, JInstruction.DALoad, JInstruction.DAStore, JInstruction.DCmpG, JInstruction.DCmpL, JInstruction.DConst_0, JInstruction.DConst_1, JInstruction.DDiv, JInstruction.DLoad, JInstruction.DLoad_0, JInstruction.DLoad_1, JInstruction.DLoad_2, JInstruction.DLoad_3, JInstruction.DMul, JInstruction.DNeg, JInstruction.DRem, JInstruction.DReturn, JInstruction.DStore, JInstruction.DStore_0, JInstruction.DStore_1, JInstruction.DStore_2, JInstruction.DStore_3, JInstruction.DSub, JInstruction.Dup, JInstruction.Dup_X1, JInstruction.Dup_X2, JInstruction.Dup2, JInstruction.Dup2_X1, JInstruction.Dup2_X2, JInstruction.F2D, JInstruction.F2I, JInstruction.F2L, JInstruction.FAdd, JInstruction.FALoad, JInstruction.FAStore, JInstruction.FCmpG, JInstruction.FCmpL, JInstruction.FConst_0, JInstruction.FConst_1, JInstruction.FConst_2, JInstruction.FDiv, JInstruction.FLoad, JInstruction.FLoad_0, JInstruction.FLoad_1, JInstruction.FLoad_2, JInstruction.FLoad_3, JInstruction.FMul, JInstruction.FNeg, JInstruction.FRem, JInstruction.FReturn, JInstruction.FStore, JInstruction.FStore_0, JInstruction.FStore_1, JInstruction.FStore_2, JInstruction.FStore_3, JInstruction.FSub, JInstruction.GetField, JInstruction.GetStatic, JInstruction.Goto, JInstruction.Goto_W, JInstruction.I2B, JInstruction.I2C, JInstruction.I2D, JInstruction.I2F, JInstruction.I2L, JInstruction.I2S, JInstruction.IAdd, JInstruction.IALoad, JInstruction.IAND, JInstruction.IAStore, JInstruction.IConst_0, JInstruction.IConst_1, JInstruction.IConst_2, JInstruction.IConst_3, JInstruction.IConst_4, JInstruction.IConst_5, JInstruction.IConst_M1, JInstruction.IDiv, JInstruction.IfACmpEq, JInstruction.IfACmpNE, JInstruction.IfEq, JInstruction.IfGE, JInstruction.IfGT, JInstruction.IfICmpEq, JInstruction.IfICmpGE, JInstruction.IfICmpGT, JInstruction.IfICmpLE, JInstruction.IfICmpLT, JInstruction.IfICmpNE, JInstruction.IfLE, JInstruction.IfLT, JInstruction.IfNE, JInstruction.IfNonNull, JInstruction.IfNull, JInstruction.IInc, JInstruction.ILoad, JInstruction.ILoad_0, JInstruction.ILoad_1, JInstruction.ILoad_2, JInstruction.ILoad_3, JInstruction.IMul, JInstruction.INeg, JInstruction.InstanceOf, JInstruction.InvokeInterface, JInstruction.InvokeSpecial, JInstruction.InvokeStatic, JInstruction.InvokeVirtual, JInstruction.IOR, JInstruction.IRem, JInstruction.IReturn, JInstruction.IShL, JInstruction.IShR, JInstruction.IStore, JInstruction.IStore_0, JInstruction.IStore_1, JInstruction.IStore_2, JInstruction.IStore_3, JInstruction.ISub, JInstruction.IUShR, JInstruction.IXOR, JInstruction.JSR, JInstruction.JSR_W, JInstruction.L2D, JInstruction.L2F, JInstruction.L2I, JInstruction.LAdd, JInstruction.LALoad, JInstruction.LAND, JInstruction.LAStore, JInstruction.LCmp, JInstruction.LConst_0, JInstruction.LConst_1, JInstruction.LdC, JInstruction.LdC_W, JInstruction.LdC2_W, JInstruction.LDiv, JInstruction.LLoad, JInstruction.LLoad_0, JInstruction.LLoad_1, JInstruction.LLoad_2, JInstruction.LLoad_3, JInstruction.LMul, JInstruction.LNeg, JInstruction.LookupSwitch, JInstruction.LOR, JInstruction.LRem, JInstruction.LReturn, JInstruction.LShL, JInstruction.LShR, JInstruction.LStore, JInstruction.LStore_0, JInstruction.LStore_1, JInstruction.LStore_2, JInstruction.LStore_3, JInstruction.LSub, JInstruction.LUShR, JInstruction.LXOR, JInstruction.MonitorEnter, JInstruction.MonitorExit, JInstruction.MultiANewArray, JInstruction.New, JInstruction.NewArray, JInstruction.NOp, JInstruction.Pop, JInstruction.Pop2, JInstruction.PutField, JInstruction.PutStatic, JInstruction.Ret, JInstruction.Return, JInstruction.SALoad, JInstruction.SAStore, JInstruction.SIPush, JInstruction.Swap, JInstruction.TableSwitch, JInstruction.Wide, JInstructionFactory, JLayoutFactory, JMethodInvoker, JMethodLookup, JReferenceManager, JScheduler
All Known Implementing Classes:
AALoad, AAStore, AbstractJInstruction, AbstractJVMComponent, AConst_Null, ALoad, ALoad_0, ALoad_1, ALoad_2, ALoad_3, ANewArray, AReturn, ArrayLength, AStore, AStore_0, AStore_1, AStore_2, AStore_3, AThrow, BALoad, BAStore, BIPush, CALoad, CAStore, CheckCast, D2F, D2I, D2L, DAdd, DALoad, DAStore, DCmpG, DCmpL, DConst_0, DConst_1, DDiv, DefaultJClassLoader, DefaultJFieldLookup, DefaultJHeap, DefaultJInstructionFactory, DefaultJLayoutFactory, DefaultJMethodInvoker, DefaultJMethodLookup, DefaultJReferenceManager, DefaultJScheduler, DLoad, DLoad_0, DLoad_1, DLoad_2, DLoad_3, DMul, DNeg, DRem, DReturn, DStore, DStore_0, DStore_1, DStore_2, DStore_3, DSub, Dup, Dup_X1, Dup_X2, Dup2, Dup2_X1, Dup2_X2, F2D, F2I, F2L, FAdd, FALoad, FAStore, FCmpG, FCmpL, FConst_0, FConst_1, FConst_2, FDiv, FLoad, FLoad_0, FLoad_1, FLoad_2, FLoad_3, FMul, FNeg, FRem, FReturn, FStore, FStore_0, FStore_1, FStore_2, FStore_3, FSub, GetField, GetStatic, Goto, Goto_W, I2B, I2C, I2D, I2F, I2L, I2S, IAdd, IALoad, IAND, IAStore, IConst_0, IConst_1, IConst_2, IConst_3, IConst_4, IConst_5, IConst_M1, IDiv, IfACmpEq, IfACmpNE, IfEq, IfGE, IfGT, IfICmpEq, IfICmpGE, IfICmpGT, IfICmpLE, IfICmpLT, IfICmpNE, IfLE, IfLT, IfNE, IfNonNull, IfNull, IInc, ILoad, ILoad_0, ILoad_1, ILoad_2, ILoad_3, IMul, INeg, InstanceOf, InvokeInterface, InvokeSpecial, InvokeStatic, InvokeVirtual, IOR, IRem, IReturn, IShL, IShR, IStore, IStore_0, IStore_1, IStore_2, IStore_3, ISub, IUShR, IXOR, JDK1_5JClassLoader, JDK1_5New, JSimpleHeapAllocator, JSR, JSR_W, JTypedHeap, L2D, L2F, L2I, LAdd, LALoad, LAND, LAStore, LCmp, LConst_0, LConst_1, LdC, LdC_W, LdC2_W, LDiv, LLoad, LLoad_0, LLoad_1, LLoad_2, LLoad_3, LMul, LNeg, LookupSwitch, LOR, LRem, LReturn, LShL, LShR, LStore, LStore_0, LStore_1, LStore_2, LStore_3, LSub, LUShR, LXOR, MonitorEnter, MonitorExit, MultiANewArray, New, NewArray, NOp, Pop, Pop2, PutField, PutStatic, RealJMethodInvoker, Ret, Return, SALoad, SAStore, SIPush, Swap, TableSwitch, VerboseJMethodInvoker, VerboseRealJMethodInvoker, Wide

public interface JVMComponent
extends JObject

The JVMComponent interface represents a JVM component i.e. a functional data unit or a data storage capability.

Author:
Christophe Deleray
See Also:
JVirtualMachine

Method Summary
 void configure(JVirtualMachine jvm)
          Configures the component via the specified JVM.
 java.lang.Class getComponentClass()
          Returns the class object describing this component.
 void replace(JVMComponent component)
          Replaces the data of this component by the data of the specified component.
 

Method Detail

configure

void configure(JVirtualMachine jvm)
Configures the component via the specified JVM. During this configuration operation, this component can meet any existing component of the specified JVM.

Parameters:
jvm - the Java Virtual Machine

getComponentClass

java.lang.Class getComponentClass()
Returns the class object describing this component.


replace

void replace(JVMComponent component)
Replaces the data of this component by the data of the specified component. The type of component must be the type of this component. This method should be call when a component is replaced in the Corosol Virtual Machine.

Parameters:
component - a component to be used to initialize this component