public void SetSimpleArrayStructArray(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(21); // obtained from the IDL or TypeLib. ModifyStaticData Object results[]; JIStruct simpleStruct = new JIStruct(); simpleStruct.addMember(new Integer(5)); simpleStruct.addMember(new Double(25)); simpleStruct.addMember(new Float(2.5)); Integer shortValue = new Integer(1); JIStruct simpleArrayStruct = new JIStruct(); simpleArrayStruct.addMember(new Integer(54)); simpleArrayStruct.addMember(new Double(5)); simpleArrayStruct.addMember( JIUnsignedFactory.getUnsigned(shortValue, JIFlags.FLAG_REPRESENTATION_UNSIGNED_SHORT)); JIStruct[] structArray = new JIStruct[1]; structArray[0] = simpleStruct; simpleArrayStruct.addMember(new JIPointer(new JIArray(structArray, true))); JIStruct[] DataArray = new JIStruct[1]; DataArray[0] = simpleArrayStruct; short size = 1; callObject.addInParamAsShort(size, JIFlags.FLAG_NULL); callObject.addInParamAsArray(new JIArray(DataArray, true), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println("SetSimpleArrayStructArray worked!"); }
// Index out of bound exception public void GetStaticStruct(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(15); // obtained from the IDL or TypeLib. // Object results[]; JIStruct varStruct = new JIStruct(); varStruct.addMember(JIUnsignedInteger.class); varStruct.addMember(Float.class); varStruct.addMember(Float.class); varStruct.addMember(JIUnsignedShort.class); varStruct.addMember(Float.class); varStruct.addMember(Date.class); varStruct.addMember(JIUnsignedInteger.class); JIStruct pointStruct = new JIStruct(); pointStruct.addMember(JIUnsignedInteger.class); pointStruct.addMember(JIUnsignedInteger.class); pointStruct.addMember(Byte.class); JIArray structArray = new JIArray(varStruct, null, 1, true); pointStruct.addMember(new JIPointer(structArray)); JIArray DataArray = new JIArray(pointStruct, null, 1, true); callObject.addOutParamAsType(JIUnsignedShort.class, JIFlags.FLAG_NULL); callObject.addOutParamAsObject(new JIPointer(DataArray, false), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println(((JIUnsignedShort) results[0]).getValue()); }
// [helpstring("20 method GetSimpleArrayStructArray")] HRESULT GetSimpleArrayStructArray([out] // unsigned short* unDataSize, // [out, size_is(,*unDataSize)] SimpleArrayStruct** pp); public void GetSimpleArrayStructArray(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(20); // obtained from the IDL or TypeLib. // Object results[]; JIStruct simpleStruct = new JIStruct(); simpleStruct.addMember(Integer.class); simpleStruct.addMember(Double.class); simpleStruct.addMember(Float.class); JIStruct simpleArrayStruct = new JIStruct(); simpleArrayStruct.addMember(Integer.class); simpleArrayStruct.addMember(Double.class); simpleArrayStruct.addMember(JIUnsignedShort.class); JIArray structArray = new JIArray(simpleStruct, null, 1, true); simpleArrayStruct.addMember(new JIPointer(structArray)); // try no pointer next JIArray DataArray = new JIArray(simpleArrayStruct, null, 1, true); callObject.addOutParamAsType(JIUnsignedShort.class, JIFlags.FLAG_NULL); callObject.addOutParamAsObject(new JIPointer(DataArray), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println(((JIUnsignedShort) results[0]).getValue()); }
public void setTCharArray() throws JIException, InterruptedException, UnknownHostException { System.gc(); JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(7); Object results[]; callObject.addInParamAsString( "AHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!!!!!!!", JIFlags.FLAG_REPRESENTATION_STRING_LPWSTR); results = comObject.call(callObject); }
public void performSquare(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(1); // obtained from the IDL or TypeLib. // AskTestServerToSquare Object results[]; short i = 3; callObject.addInParamAsShort(i, JIFlags.FLAG_NULL); callObject.addOutParamAsType(Short.class, JIFlags.FLAG_NULL); // Short results = comObject.call(callObject); System.out.println( "ITestServer.AskTestServerToSquare succeeded, input=" + i + " output=" + results[0]); }
public void setConformantIntArray() throws JIException, InterruptedException, UnknownHostException { System.gc(); JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(9); Object results[]; int i = 4; Integer[] intAry = new Integer[i]; for (int j = 0; j < i; j++) { intAry[j] = new Integer(j); } JIArray ary = new JIArray(intAry, true); callObject.addInParamAsInt(i, JIFlags.FLAG_NULL); callObject.addInParamAsArray(ary, JIFlags.FLAG_NULL); results = comObject.call(callObject); }
public void getSimpleStruct(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(12); // obtained from the IDL or TypeLib. // Object results[]; JIStruct struct = new JIStruct(); struct.addMember(Integer.class); struct.addMember(Double.class); struct.addMember(Float.class); callObject.addOutParamAsObject(new JIPointer(struct), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println(results[0]); }
public void getTCharArray() throws JIException, InterruptedException, UnknownHostException { System.gc(); JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(6); Object results[]; callObject.addOutParamAsObject( new JIArray(Byte.class, new int[] {50}, 1, false), JIFlags.FLAG_NULL); results = comObject.call(callObject); JIArray arrayOfResults = (JIArray) results[0]; Byte[] arrayOfBytes = (Byte[]) arrayOfResults.getArrayInstance(); int length = 50; for (int i = 0; i < length; i++) { System.out.println(arrayOfBytes[i].byteValue()); } }
public void getConformantStruct(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(14); // obtained from the IDL or TypeLib. // Object results[]; JIStruct struct = new JIStruct(); struct.addMember(Integer.class); struct.addMember(Double.class); struct.addMember(JIUnsignedShort.class); JIArray longArray = new JIArray(Integer.class, null, 1, true); struct.addMember(new JIPointer(longArray)); callObject.addOutParamAsObject(new JIPointer(struct), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println(results[0]); }
public void GetStruct(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(10); // obtained from the IDL or TypeLib. // Object results[]; // change the struct to have the array as the last item JIStruct struct = new JIStruct(); JIArray longArray = new JIArray(Integer.class, new int[] {50}, 1, false); struct.addMember(Integer.class); struct.addMember(Float.class); struct.addMember(longArray); callObject.addOutParamAsObject(new JIPointer(struct), JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println(results[0]); }
public void SetStaticStruct(String[] args) throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(16); // obtained from the IDL or TypeLib. Object results[]; JIUnsignedShort j; Long value = new Long(10); Integer shortValue = new Integer(5); JIStruct varStruct = new JIStruct(); varStruct.addMember( JIUnsignedFactory.getUnsigned(value, JIFlags.FLAG_REPRESENTATION_UNSIGNED_INT)); varStruct.addMember(new Float(1.1)); varStruct.addMember(new Float(1.2)); varStruct.addMember( JIUnsignedFactory.getUnsigned(shortValue, JIFlags.FLAG_REPRESENTATION_UNSIGNED_SHORT)); varStruct.addMember(new Float(1.0)); varStruct.addMember(new Date()); varStruct.addMember( JIUnsignedFactory.getUnsigned(value, JIFlags.FLAG_REPRESENTATION_UNSIGNED_INT)); JIStruct pointStruct = new JIStruct(); pointStruct.addMember( JIUnsignedFactory.getUnsigned(new Long(15), JIFlags.FLAG_REPRESENTATION_UNSIGNED_INT)); pointStruct.addMember( JIUnsignedFactory.getUnsigned(new Long(10), JIFlags.FLAG_REPRESENTATION_UNSIGNED_INT)); pointStruct.addMember(new Byte((byte) 1)); JIStruct[] varStructArray = new JIStruct[1]; varStructArray[0] = varStruct; pointStruct.addMember( new JIPointer(new JIArray(varStructArray, true))); // since this is an embedded pointer JIStruct[] pointAry = new JIStruct[1]; pointAry[0] = pointStruct; JIArray ary = new JIArray(pointAry, true); callObject.addInParamAsShort((short) 1, JIFlags.FLAG_REPRESENTATION_UNSIGNED_SHORT); callObject.addInParamAsArray(ary, JIFlags.FLAG_NULL); results = comObject.call(callObject); System.out.println("SetStaticStruct worked!"); }
public void getConformantIntArray() throws JIException, InterruptedException, UnknownHostException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(8); Object results[]; callObject.addOutParamAsType(Integer.class, JIFlags.FLAG_NULL); callObject.addOutParamAsObject( new JIPointer(new JIArray(Integer.class, null, 1, true)), JIFlags.FLAG_NULL); results = comObject.call(callObject); JIArray arrayOfResults = (JIArray) ((JIPointer) results[1]).getReferent(); Integer[] arrayOfIntegers = (Integer[]) arrayOfResults.getArrayInstance(); int length = ((Integer) results[0]).intValue(); for (int i = 0; i < length; i++) { System.out.println(arrayOfIntegers[i].intValue()); } }