public static final JILocalCoClass getCoClass(JIOPCEventSink instance){ //Define the onEvent method for this interface JILocalParamsDescriptor oeParams=new JILocalParamsDescriptor(); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsObject(new JIArray(outStruct(),null,1,true), JIFlags.FLAG_NULL); JILocalMethodDescriptor oeMethod=new JILocalMethodDescriptor("onEvent",0,oeParams); //This identify the JIOPCEventSink and not the interface JILocalInterfaceDefinition def=new JILocalInterfaceDefinition(LOCAL_CLASS_IID,false); def.addMethodDescriptor(oeMethod); JILocalCoClass coClass=(instance==null) ? new JILocalCoClass(def,JIOPCEventSink.class) : new JILocalCoClass(def,instance); ArrayList list = new ArrayList(); //Supported interface list.add(OPC_IID); coClass.setSupportedEventInterfaces(list); return coClass; } }
final Object[] params = parameters.getInParams (); this.inparametersAsClass = new Class[params.length];
JILocalParamsDescriptor propertyChangeObject = new JILocalParamsDescriptor(); propertyChangeObject.addInParamAsType(JIString.class,JIFlags.FLAG_NULL); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("PropertyChange",0x70,propertyChangeObject); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor navigateObject = new JILocalParamsDescriptor(); navigateObject.addInParamAsType(IJIComObject.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("BeforeNavigate2",0xFA,navigateObject); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor StatusTextChange = new JILocalParamsDescriptor(); StatusTextChange.addInParamAsType(JIString.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("StatusTextChange",0x66,StatusTextChange); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor ProgressChange = new JILocalParamsDescriptor(); ProgressChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); ProgressChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("ProgressChange",0x6c,ProgressChange); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor CommandStateChange = new JILocalParamsDescriptor(); CommandStateChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL);
case 5: //getIDOfNames JILocalParamsDescriptor paramObject = new JILocalParamsDescriptor (); paramObject.addInParamAsType ( UUID.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsObject ( new JIArray ( new JIString ( JIFlags.FLAG_REPRESENTATION_STRING_LPWSTR ), null, 1, true ), JIFlags.FLAG_NULL ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); JIArray array = (JIArray)paramObject.read ( ndr )[1]; paramObject = new JILocalParamsDescriptor (); paramObject.setSession ( this.session ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsType ( UUID.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsObject ( dispParams, JIFlags.FLAG_REPRESENTATION_IDISPATCH_INVOKE ); paramObject.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); paramObject.addInParamAsObject ( new JIArray ( Integer.class, null, 1, true ), JIFlags.FLAG_NULL ); paramObject.addInParamAsObject ( new JIArray ( JIVariant.class, null, 1, true ), JIFlags.FLAG_NULL ); final Object[] retresults = paramObject.read ( ndr ); methodDescriptor.getParameterObject ().setSession ( this.session ); params = methodDescriptor.getParameterObject ().read ( ndr ); execute = true;
JILocalParamsDescriptor parameterObject = new JILocalParamsDescriptor(); parameterObject.addInParamAsObject(new JIString(JIFlags.FLAG_REPRESENTATION_STRING_BSTR),JIFlags.FLAG_REPRESENTATION_STRING_BSTR); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("Execute",1,parameterObject); interfaceDefinition.addMethodDescriptor(methodDescriptor);
JILocalParamsDescriptor runtimeObject = new JILocalParamsDescriptor(); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("test",1,runtimeObject); interfaceDefinition.addMethodDescriptor(methodDescriptor);
case 5: //getIDOfNames JILocalParamsDescriptor paramObject = new JILocalParamsDescriptor(); paramObject.addInParamAsType(UUID.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(new JIString(JIFlags.FLAG_REPRESENTATION_STRING_LPWSTR),null,1,true),JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); JIArray array = (JIArray)paramObject.read(ndr)[1]; paramObject = new JILocalParamsDescriptor(); paramObject.setSession(session); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(UUID.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(dispParams,JIFlags.FLAG_REPRESENTATION_IDISPATCH_INVOKE); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(Integer.class,null,1,true),JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(JIVariant.class,null,1,true),JIFlags.FLAG_NULL); Object[] retresults = paramObject.read(ndr); methodDescriptor.getParameterObject().setSession(session); params = methodDescriptor.getParameterObject().read(ndr); execute = true;
JILocalParamsDescriptor parameterObject = new JILocalParamsDescriptor(); parameterObject.addInParamAsObject(new JIString(JIFlags.FLAG_REPRESENTATION_STRING_BSTR),JIFlags.FLAG_REPRESENTATION_STRING_BSTR); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("Execute",1,parameterObject); interfaceDefinition.addMethodDescriptor(methodDescriptor);
JILocalParamsDescriptor propertyChangeObject = new JILocalParamsDescriptor(); propertyChangeObject.addInParamAsType(JIString.class,JIFlags.FLAG_NULL); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("PropertyChange",0x70,propertyChangeObject); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor navigateObject = new JILocalParamsDescriptor(); navigateObject.addInParamAsType(IJIComObject.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); navigateObject.addInParamAsType(JIVariant.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("BeforeNavigate2",0xFA,navigateObject); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor StatusTextChange = new JILocalParamsDescriptor(); StatusTextChange.addInParamAsType(JIString.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("StatusTextChange",0x66,StatusTextChange); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor ProgressChange = new JILocalParamsDescriptor(); ProgressChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); ProgressChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); methodDescriptor = new JILocalMethodDescriptor("ProgressChange",0x6c,ProgressChange); javaComponent.getInterfaceDefinition().addMethodDescriptor(methodDescriptor); JILocalParamsDescriptor CommandStateChange = new JILocalParamsDescriptor(); CommandStateChange.addInParamAsType(Integer.class,JIFlags.FLAG_NULL);
final JILocalParamsDescriptor runtimeObject = new JILocalParamsDescriptor (); final JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor ( "test", 1, runtimeObject ); interfaceDefinition.addMethodDescriptor ( methodDescriptor );
public static final JILocalCoClass getCoClass ( final JIOPCEventSink instance ) { //Define the onEvent method for this interface final JILocalParamsDescriptor oeParams = new JILocalParamsDescriptor (); oeParams.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); oeParams.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); oeParams.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); oeParams.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); oeParams.addInParamAsObject ( new JIArray ( outStruct (), null, 1, true ), JIFlags.FLAG_NULL ); final JILocalMethodDescriptor oeMethod = new JILocalMethodDescriptor ( "onEvent", 0, oeParams ); //This identify the JIOPCEventSink and not the interface final JILocalInterfaceDefinition def = new JILocalInterfaceDefinition ( LOCAL_CLASS_IID, false ); def.addMethodDescriptor ( oeMethod ); final JILocalCoClass coClass = instance == null ? new JILocalCoClass ( def, JIOPCEventSink.class ) : new JILocalCoClass ( def, instance ); final ArrayList list = new ArrayList (); //Supported interface list.add ( OPC_IID ); coClass.setSupportedEventInterfaces ( list ); return coClass; } }
case 5: //getIDOfNames JILocalParamsDescriptor paramObject = new JILocalParamsDescriptor(); paramObject.addInParamAsType(UUID.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(new JIString(JIFlags.FLAG_REPRESENTATION_STRING_LPWSTR),null,1,true),JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); JIArray array = (JIArray)paramObject.read(ndr)[1]; paramObject = new JILocalParamsDescriptor(); paramObject.setSession(session); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(UUID.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(dispParams,JIFlags.FLAG_REPRESENTATION_IDISPATCH_INVOKE); paramObject.addInParamAsType(Integer.class,JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(Integer.class,null,1,true),JIFlags.FLAG_NULL); paramObject.addInParamAsObject(new JIArray(JIVariant.class,null,1,true),JIFlags.FLAG_NULL); Object[] retresults = paramObject.read(ndr); methodDescriptor.getParameterObject().setSession(session); params = methodDescriptor.getParameterObject().read(ndr); execute = true;
final JILocalParamsDescriptor parameterObject = new JILocalParamsDescriptor (); parameterObject.addInParamAsObject ( new JIString ( JIFlags.FLAG_REPRESENTATION_STRING_BSTR ), JIFlags.FLAG_REPRESENTATION_STRING_BSTR ); final JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor ( "Execute", 1, parameterObject ); interfaceDefinition.addMethodDescriptor ( methodDescriptor );
final JILocalParamsDescriptor propertyChangeObject = new JILocalParamsDescriptor (); propertyChangeObject.addInParamAsType ( JIString.class, JIFlags.FLAG_NULL ); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor ( "PropertyChange", 0x70, propertyChangeObject ); javaComponent.getInterfaceDefinition ().addMethodDescriptor ( methodDescriptor ); final JILocalParamsDescriptor navigateObject = new JILocalParamsDescriptor (); navigateObject.addInParamAsType ( IJIComObject.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); navigateObject.addInParamAsType ( JIVariant.class, JIFlags.FLAG_NULL ); methodDescriptor = new JILocalMethodDescriptor ( "BeforeNavigate2", 0xFA, navigateObject ); javaComponent.getInterfaceDefinition ().addMethodDescriptor ( methodDescriptor ); final JILocalParamsDescriptor StatusTextChange = new JILocalParamsDescriptor (); StatusTextChange.addInParamAsType ( JIString.class, JIFlags.FLAG_NULL ); methodDescriptor = new JILocalMethodDescriptor ( "StatusTextChange", 0x66, StatusTextChange ); javaComponent.getInterfaceDefinition ().addMethodDescriptor ( methodDescriptor ); final JILocalParamsDescriptor ProgressChange = new JILocalParamsDescriptor (); ProgressChange.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); ProgressChange.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); methodDescriptor = new JILocalMethodDescriptor ( "ProgressChange", 0x6c, ProgressChange ); javaComponent.getInterfaceDefinition ().addMethodDescriptor ( methodDescriptor ); final JILocalParamsDescriptor CommandStateChange = new JILocalParamsDescriptor (); CommandStateChange.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL );
JILocalParamsDescriptor runtimeObject = new JILocalParamsDescriptor(); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("test",1,runtimeObject); interfaceDefinition.addMethodDescriptor(methodDescriptor);
Object[] params = parameters.getInParams(); inparametersAsClass = new Class[params.length];
public static final JILocalCoClass getCoClass(JIOPCEventSink instance){ //Define the onEvent method for this interface JILocalParamsDescriptor oeParams=new JILocalParamsDescriptor(); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsType(Integer.class, JIFlags.FLAG_NULL); oeParams.addInParamAsObject(new JIArray(outStruct(),null,1,true), JIFlags.FLAG_NULL); JILocalMethodDescriptor oeMethod=new JILocalMethodDescriptor("onEvent",0,oeParams); //This identify the JIOPCEventSink and not the interface JILocalInterfaceDefinition def=new JILocalInterfaceDefinition(LOCAL_CLASS_IID,false); def.addMethodDescriptor(oeMethod); JILocalCoClass coClass=(instance==null) ? new JILocalCoClass(def,JIOPCEventSink.class) : new JILocalCoClass(def,instance); ArrayList list = new ArrayList(); //Supported interface list.add(OPC_IID); coClass.setSupportedEventInterfaces(list); return coClass; } }
Object[] params = parameters.getInParams(); inparametersAsClass = new Class[params.length];
params = new JILocalParamsDescriptor (); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); // trans id params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); // group handle params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); // master quality params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); // master error params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); // count params.addInParamAsObject ( new JIArray ( Integer.class, null, 1, true ), JIFlags.FLAG_NULL ); // item handles params.addInParamAsObject ( new JIArray ( JIVariant.class, null, 1, true ), JIFlags.FLAG_NULL ); // values params.addInParamAsObject ( new JIArray ( Short.class, null, 1, true ), JIFlags.FLAG_NULL ); // qualities params.addInParamAsObject ( new JIArray ( FILETIME.getStruct (), null, 1, true ), JIFlags.FLAG_NULL ); // timestamps params.addInParamAsObject ( new JIArray ( Integer.class, null, 1, true ), JIFlags.FLAG_NULL ); // errors params = new JILocalParamsDescriptor (); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsObject ( new JIArray ( Integer.class, null, 1, true ), JIFlags.FLAG_NULL ); params.addInParamAsObject ( new JIArray ( JIVariant.class, null, 1, true ), JIFlags.FLAG_NULL ); params.addInParamAsObject ( new JIArray ( Short.class, null, 1, true ), JIFlags.FLAG_NULL ); params.addInParamAsObject ( new JIArray ( FILETIME.getStruct (), null, 1, true ), JIFlags.FLAG_NULL ); params.addInParamAsObject ( new JIArray ( Integer.class, null, 1, true ), JIFlags.FLAG_NULL ); method = new JILocalMethodDescriptor ( "OnReadComplete", params ); this.coClass.getInterfaceDefinition ().addMethodDescriptor ( method ); params = new JILocalParamsDescriptor (); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL ); params.addInParamAsType ( Integer.class, JIFlags.FLAG_NULL );
private static JILocalInterfaceDefinition registerInterface() throws JIException { //Now for the Java Implementation of SampleTestServer2 interface (from the type library or IDL) JILocalInterfaceDefinition interfaceDefinition = new JILocalInterfaceDefinition("D3F9CE10-686C-11d2-97BF-006008BD50B1", false);//IStatisUpdateMeSink JIStruct VarData = new JIStruct();// Will add in the struct later on VarData.addMember(JIUnsignedInteger.class); VarData.addMember(Float.class); VarData.addMember(Float.class); VarData.addMember(JIUnsignedShort.class); VarData.addMember(Float.class); VarData.addMember(Date.class); VarData.addMember(JIUnsignedShort.class); JIStruct NonVariableData = new JIStruct();// Will add in the struct later on NonVariableData.addMember(JIUnsignedInteger.class); NonVariableData.addMember(JIUnsignedInteger.class); NonVariableData.addMember(JIUnsignedByte.class); NonVariableData.addMember(new JIPointer(new JIArray(VarData, null, 1, true),true)); //since this is an embedded pointer JIArray NonVariableDataArray = new JIArray(NonVariableData, null, 1, true); JILocalParamsDescriptor updateParamObj = new JILocalParamsDescriptor(); updateParamObj.addInParamAsType(JIUnsignedShort.class, JIFlags.FLAG_NULL); updateParamObj.addInParamAsObject(NonVariableDataArray, JIFlags.FLAG_NULL); JILocalMethodDescriptor methodDescriptor = new JILocalMethodDescriptor("UpdateMe", updateParamObj); interfaceDefinition.addMethodDescriptor(methodDescriptor); return interfaceDefinition; }