@Override public JISession getAssociatedSession () { return this.comObject.getAssociatedSession (); }
@Override public void addRef () throws JIException { this.comObject.addRef (); }
@Override public int getInstanceLevelSocketTimeout () { return this.comObject.getInstanceLevelSocketTimeout (); }
void replaceMembers(IJIComObject comObject) { this.session = comObject.getAssociatedSession(); this.ptr = comObject.internal_getInterfacePointer(); }
logger.info ( "Attaching event handler for comObject: " + comObject.getInterfaceIdentifier () + " , sourceUUID: " + sourceUUID + " , eventListener: " + eventListener.getInterfaceIdentifier () + " and eventListner IPID: " + eventListener.getIpid () ); final IJIComObject connectionPointContainer = comObject.queryInterface ( "B196B284-BAB4-101A-B69C-00AA00341D07" ); final JICallBuilder object = new JICallBuilder ( true ); object.setOpnum ( 1 ); object.addInParamAsUUID ( sourceUUID, JIFlags.FLAG_NULL ); object.addOutParamAsObject ( IJIComObject.class, JIFlags.FLAG_NULL ); final Object[] objects = connectionPointContainer.call ( object ); //find connection point final IJIComObject connectionPointer = (IJIComObject)objects[0]; object.addInParamAsComObject ( eventListener, JIFlags.FLAG_NULL ); object.addOutParamAsType ( Integer.class, JIFlags.FLAG_NULL ); final Object[] obj = connectionPointer.call ( object ); connectionPointContainer.release (); return comObject.internal_setConnectionInfo ( connectionPointer, dwcookie );
public void startWord() throws JIException { unknown = comServer.createInstance(); IJIDispatch dispatch = (IJIDispatch)JIObjectFactory.narrowObject(unknown.queryInterface(IJIDispatch.IID)); }
/** * @exclude * @param comObject * @param identifier * @throws JIException */ public static void detachEventHandler ( final IJIComObject comObject, final String identifier ) throws JIException { final Object[] connectionInfo = comObject.internal_getConnectionInfo ( identifier ); if ( connectionInfo == null ) { throw new JIException ( JIErrorCodes.JI_CALLBACK_INVALID_ID ); } logger.info ( "Detaching event handler for comObject: {} , identifier: {}", comObject.getInterfaceIdentifier (), identifier ); final IJIComObject connectionPointer = (IJIComObject)connectionInfo[0]; //first use the cookie to detach. final JICallBuilder object = new JICallBuilder ( true ); object.setOpnum ( 3 ); object.addInParamAsInt ( ( (Integer)connectionInfo[1] ).intValue (), JIFlags.FLAG_NULL ); connectionPointer.call ( object ); //now release the connectionPointer. connectionPointer.release (); }
public int getTypeInfoCount() throws JIException { JICallBuilder callObject = new JICallBuilder(true); callObject.setOpnum(0); callObject.addOutParamAsType(Integer.class,JIFlags.FLAG_NULL); Object[] result = comObject.call(callObject); return ((Integer)result[0]).intValue(); }
/** * @exclude * @param IPID */ void addToSession ( final IJIComObject comObject, final byte[] oid ) { //nothing will be done if the session is being destroyed. if ( this.sessionInDestroy ) { return; } final IPID_SessionID_Holder holder = new IPID_SessionID_Holder ( comObject.getIpid (), getSessionIdentifier (), false, oid ); //mapOfObjects.put(new WeakReference(comObject,referenceQueueOfCOMObjects),holder); synchronized ( mapOfObjects ) { mapOfObjects.put ( new WeakReference ( comObject, referenceQueueOfCOMObjects ), holder ); } //setting if NO PING flag has been set to true. addToSession ( comObject.getIpid (), oid, ( (JIStdObjRef)comObject.internal_getInterfacePointer ().getObjectReference ( JIInterfacePointer.OBJREF_STANDARD ) ).getFlags () == 0x00001000 ); logger.info ( "for IID: {}", comObject.getInterfaceIdentifier () ); // Integer value = (Integer)mapOfIPIDSvsCount.get(comObject.getIpid()); // if (value == null) // { // mapOfIPIDSvsCount.put(comObject.getIpid(), new Integer(0)); // } // debug_addIpids(comObject.getIpid(),((JIStdObjRef)comObject.internal_getInterfacePointer().getObjectReference(JIInterfacePointer.OBJREF_STANDARD)).getPublicRefs()); }
/** Returns the <i>IID</i> of this object * * @return String representation of 128 bit uuid. */ public String getInterfaceIdentifier() { return comObject.getInterfaceIdentifier(); }
@Override public JIInterfacePointer internal_getInterfacePointer () { return this.comObject.internal_getInterfacePointer (); }
IPID_SessionID_Holder holder = new IPID_SessionID_Holder(comObject.getIpid(),getSessionIdentifier(),false,oid); addToSession(comObject.getIpid(),oid); if (JISystem.getLogger().isLoggable(Level.INFO)) JISystem.getLogger().info(" for IID: " + comObject.getInterfaceIdentifier());
@Override public String getIpid () { return this.comObject.getIpid (); }
@Override public IJIUnreferenced getUnreferencedHandler () { return this.comObject.getUnreferencedHandler (); }
@Override public Object[] internal_getConnectionInfo ( final String identifier ) { return this.comObject.internal_getConnectionInfo ( identifier ); }
JISystem.getLogger().info("Attaching event handler for comObject: " + comObject.getInterfaceIdentifier() + " , sourceUUID: " + sourceUUID + " , eventListener: " + eventListener.getInterfaceIdentifier() + " and eventListner IPID: " + eventListener.getIpid()); IJIComObject connectionPointContainer = (IJIComObject)comObject.queryInterface("B196B284-BAB4-101A-B69C-00AA00341D07"); JICallBuilder object = new JICallBuilder(true); object.setOpnum(1); object.addInParamAsUUID(sourceUUID,JIFlags.FLAG_NULL); object.addOutParamAsObject(IJIComObject.class,JIFlags.FLAG_NULL); Object[] objects = (Object[])connectionPointContainer.call(object); //find connection point IJIComObject connectionPointer = (IJIComObject)objects[0]; object.addInParamAsComObject(eventListener, JIFlags.FLAG_NULL); object.addOutParamAsType(Integer.class,JIFlags.FLAG_NULL); Object[] obj = connectionPointer.call(object); connectionPointContainer.release(); return comObject.internal_setConnectionInfo(connectionPointer,dwcookie);
public void startWord () throws JIException { this.unknown = this.comStub.createInstance (); this.dispatch = (IJIDispatch)JIObjectFactory.narrowObject ( this.unknown.queryInterface ( IJIDispatch.IID ) ); }
/** * @exclude * @param comObject * @param identifier * @throws JIException */ public static void detachEventHandler(IJIComObject comObject, String identifier) throws JIException { Object[] connectionInfo = comObject.internal_getConnectionInfo(identifier); if (connectionInfo == null) { throw new JIException(JIErrorCodes.JI_CALLBACK_INVALID_ID); } if (JISystem.getLogger().isLoggable(Level.INFO)) { JISystem.getLogger().info("Detaching event handler for comObject: " + comObject.getInterfaceIdentifier() + " , identifier: " + identifier); } IJIComObject connectionPointer = (IJIComObject)connectionInfo[0]; //first use the cookie to detach. JICallBuilder object = new JICallBuilder(true); object.setOpnum(3); object.addInParamAsInt(((Integer)connectionInfo[1]).intValue(),JIFlags.FLAG_NULL); connectionPointer.call(object); //now release the connectionPointer. connectionPointer.release(); }
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); }