public class Dispatch extends JacobObject
You're going to live here a lot
Modifier and Type | Field and Description |
---|---|
static int |
fdexNameCaseSensitive
One of legal values for GetDispId.
|
static int |
Get
used by callN() and callSubN()
|
static int |
LOCALE_SYSTEM_DEFAULT
Used to set the locale in a call.
|
long |
m_pDispatch
This is public because Dispatch.cpp knows its name and accesses it
directly to get the dispatch id.
|
static int |
Method
used by callN() and callSubN()
|
static int |
Put
used by put()
|
static int |
PutRef
not used, probably intended for putRef()
|
Modifier | Constructor and Description |
---|---|
|
Dispatch()
zero argument constructor that sets the dispatch pointer to 0 This is the
only way to create a Dispatch without a value in the pointer field.
|
|
Dispatch(Dispatch dispatchToBeDisplaced)
Constructor to be used by subclass that want to swap themselves in for
the default Dispatch class.
|
protected |
Dispatch(long pDisp)
Constructor that only gets called from JNI QueryInterface calls JNI code
that looks up the object for the key passed in.
|
|
Dispatch(java.lang.String requestedProgramId)
This constructor calls createInstance with progid.
|
Modifier and Type | Method and Description |
---|---|
static Variant |
call(Dispatch dispatchTarget,
int dispid) |
static Variant |
call(Dispatch dispatchTarget,
int dispid,
java.lang.Object... attributes) |
static Variant |
call(Dispatch dispatchTarget,
java.lang.String name) |
static Variant |
call(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object... attributes) |
static Variant |
callN_CaseSensitive(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object[] values)
not implemented yet
|
static Variant |
callN(Dispatch dispatchTarget,
int dispID,
java.lang.Object... args) |
static Variant |
callN(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object... args) |
static void |
callSub(Dispatch dispatchTarget,
int dispid)
makes call to native callSubN
|
static void |
callSub(Dispatch dispatchTarget,
int dispid,
java.lang.Object... attributes)
makes call to native callSubN
|
static void |
callSub(Dispatch dispatchTarget,
java.lang.String name)
makes call to native callSubN
|
static void |
callSub(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object... attributes)
makes call to native callSubN
|
static void |
callSubN(Dispatch dispatchTarget,
int dispID,
java.lang.Object... args) |
static void |
callSubN(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object... args) |
protected void |
coCreateInstance(java.lang.String pProgramIdentifier)
Wrapper around the native method
|
protected void |
finalize() |
static Variant |
get_CaseSensitive(Dispatch dispatchTarget,
java.lang.String name)
not implemented yet
|
static Variant |
get(Dispatch dispatchTarget,
int dispid)
Cover for call to underlying invokev()
|
static Variant |
get(Dispatch dispatchTarget,
java.lang.String name)
Cover for call to underlying invokev()
|
protected void |
getActiveInstance(java.lang.String pProgramIdentifier)
Wrapper around the native method
|
static int |
getIDOfName(Dispatch dispatchTarget,
java.lang.String name) |
static int[] |
getIDsOfNames(Dispatch dispatchTarget,
int lcid,
java.lang.String[] names) |
static int[] |
getIDsOfNames(Dispatch dispatchTarget,
java.lang.String[] names) |
java.lang.String |
getProgramId()
returns the program id if an activeX component created this otherwise it
returns null.
|
static int |
hasExited(Dispatch dispatchTarget)
The method is used to poll until it returns 1, indicating that the COM
server in gone.
|
static int |
hasExited(Dispatch disp,
int dispid,
int lcid)
Cover for native method
|
static Variant |
invoke(Dispatch dispatchTarget,
int dispID,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static Variant |
invoke(Dispatch dispatchTarget,
java.lang.String name,
int dispID,
int lcid,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static Variant |
invoke(Dispatch dispatchTarget,
java.lang.String name,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static void |
invokeSub(Dispatch dispatchTarget,
int dispid,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static void |
invokeSub(Dispatch dispatchTarget,
java.lang.String name,
int dispid,
int lcid,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static void |
invokeSub(Dispatch dispatchTarget,
java.lang.String name,
int wFlags,
java.lang.Object[] oArg,
int[] uArgErr) |
static void |
invokeSubv(Dispatch dispatchTarget,
int dispID,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static void |
invokeSubv(Dispatch dispatchTarget,
java.lang.String name,
int dispID,
int lcid,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static void |
invokeSubv(Dispatch dispatchTarget,
java.lang.String name,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static Variant |
invokev(Dispatch dispatchTarget,
int dispID,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static Variant |
invokev(Dispatch dispatchTarget,
java.lang.String name,
int dispID,
int lcid,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static Variant |
invokev(Dispatch dispatchTarget,
java.lang.String name,
int wFlags,
Variant[] vArg,
int[] uArgErr) |
static Variant |
invokev(Dispatch dispatchTarget,
java.lang.String name,
int wFlags,
Variant[] vArg,
int[] uArgErr,
int wFlagsEx) |
protected boolean |
isAttached() |
static void |
put_Casesensitive(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object val)
not implemented yet
|
static void |
put(Dispatch dispatchTarget,
int dispid,
java.lang.Object val) |
static void |
put(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object val) |
static void |
putRef(Dispatch dispatchTarget,
int dispid,
java.lang.Object val)
cover for underlying call to invoke
|
static void |
putRef(Dispatch dispatchTarget,
java.lang.String name,
java.lang.Object val)
cover for underlying call to invoke
|
Dispatch |
QueryInterface(java.lang.String iid)
Return a different interface by IID string.
|
void |
safeRelease()
Finalizers call this method.
|
debug, getBuildDate, getBuildVersion, isDebugEnabled
public static final int LOCALE_SYSTEM_DEFAULT
public static final int Method
public static final int Get
public static final int Put
public static final int PutRef
public static final int fdexNameCaseSensitive
public long m_pDispatch
public Dispatch()
public Dispatch(java.lang.String requestedProgramId)
This constructor always creates a new windows/program object because it is based on the CoCreate() windows function.
requestedProgramId
- java.lang.IllegalArgumentException
- if null is passed in as the program id
protected Dispatch(long pDisp)
pDisp
- public Dispatch(Dispatch dispatchToBeDisplaced)
dispatchToBeDisplaced
- protected void getActiveInstance(java.lang.String pProgramIdentifier)
pProgramIdentifier
- name of the program you wish to connect toprotected void coCreateInstance(java.lang.String pProgramIdentifier)
pProgramIdentifier
- public Dispatch QueryInterface(java.lang.String iid)
Once you have a Dispatch object, you can navigate to the other interfaces of a COM object by calling QueryInterafce. The argument is an IID string in the format: "{9BF24410-B2E0-11D4-A695-00104BFF3241}". You typically get this string from the idl file (it's called uuid in there). Any interface you try to use must be derived from IDispatch. T The atl example uses this.
The Dispatch instance resulting from this query is instanciated in the JNI code.
iid
- public java.lang.String getProgramId()
protected void finalize()
finalize
in class java.lang.Object
public void safeRelease()
JacobObject
safeRelease
in class JacobObject
protected boolean isAttached()
public static void put_Casesensitive(Dispatch dispatchTarget, java.lang.String name, java.lang.Object val)
dispatchTarget
- name
- val
- NotImplementedException
public static void invokeSubv(Dispatch dispatchTarget, java.lang.String name, int dispID, int lcid, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- name
- dispID
- lcid
- wFlags
- vArg
- uArgErr
- public static void invokeSubv(Dispatch dispatchTarget, java.lang.String name, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- name
- wFlags
- vArg
- uArgErr
- public static void invokeSubv(Dispatch dispatchTarget, int dispID, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- dispID
- wFlags
- vArg
- uArgErr
- public static Variant callN_CaseSensitive(Dispatch dispatchTarget, java.lang.String name, java.lang.Object[] values)
dispatchTarget
- name
- values
- NotImplementedException
public static void callSubN(Dispatch dispatchTarget, java.lang.String name, java.lang.Object... args)
dispatchTarget
- name
- args
- an array of argument objectspublic static void callSubN(Dispatch dispatchTarget, int dispID, java.lang.Object... args)
dispatchTarget
- dispID
- args
- an array of argument objectspublic static int getIDOfName(Dispatch dispatchTarget, java.lang.String name)
dispatchTarget
- name
- public static int[] getIDsOfNames(Dispatch dispatchTarget, int lcid, java.lang.String[] names)
dispatchTarget
- lcid
- names
- public static int[] getIDsOfNames(Dispatch dispatchTarget, java.lang.String[] names)
dispatchTarget
- names
- public static Variant callN(Dispatch dispatchTarget, java.lang.String name, java.lang.Object... args)
dispatchTarget
- name
- args
- public static Variant callN(Dispatch dispatchTarget, int dispID, java.lang.Object... args)
dispatchTarget
- dispID
- args
- public static Variant invoke(Dispatch dispatchTarget, java.lang.String name, int dispID, int lcid, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- name
- dispID
- lcid
- wFlags
- oArg
- uArgErr
- public static Variant invoke(Dispatch dispatchTarget, java.lang.String name, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- name
- wFlags
- oArg
- uArgErr
- public static Variant invoke(Dispatch dispatchTarget, int dispID, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- dispID
- wFlags
- oArg
- uArgErr
- public static Variant call(Dispatch dispatchTarget, java.lang.String name)
dispatchTarget
- name
- public static Variant call(Dispatch dispatchTarget, java.lang.String name, java.lang.Object... attributes)
dispatchTarget
- name
- attributes
- public static Variant call(Dispatch dispatchTarget, int dispid)
dispatchTarget
- dispid
- public static Variant call(Dispatch dispatchTarget, int dispid, java.lang.Object... attributes)
dispatchTarget
- dispid
- attributes
- var arg list of attributes that will be passed to the
underlying functionpublic static void put(Dispatch dispatchTarget, java.lang.String name, java.lang.Object val)
dispatchTarget
- name
- val
- public static void put(Dispatch dispatchTarget, int dispid, java.lang.Object val)
dispatchTarget
- dispid
- val
- public static Variant invokev(Dispatch dispatchTarget, java.lang.String name, int dispID, int lcid, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- name
- dispID
- lcid
- wFlags
- vArg
- uArgErr
- public static Variant invokev(Dispatch dispatchTarget, java.lang.String name, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- name
- wFlags
- vArg
- uArgErr
- public static Variant invokev(Dispatch dispatchTarget, java.lang.String name, int wFlags, Variant[] vArg, int[] uArgErr, int wFlagsEx)
dispatchTarget
- name
- wFlags
- vArg
- uArgErr
- wFlagsEx
- public static Variant invokev(Dispatch dispatchTarget, int dispID, int wFlags, Variant[] vArg, int[] uArgErr)
dispatchTarget
- dispID
- wFlags
- vArg
- uArgErr
- public static void invokeSub(Dispatch dispatchTarget, java.lang.String name, int dispid, int lcid, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- name
- dispid
- lcid
- wFlags
- oArg
- uArgErr
- public static void invokeSub(Dispatch dispatchTarget, java.lang.String name, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- name
- wFlags
- oArg
- uArgErr
- public static void invokeSub(Dispatch dispatchTarget, int dispid, int wFlags, java.lang.Object[] oArg, int[] uArgErr)
dispatchTarget
- dispid
- wFlags
- oArg
- uArgErr
- public static void callSub(Dispatch dispatchTarget, java.lang.String name)
dispatchTarget
- name
- public static void callSub(Dispatch dispatchTarget, java.lang.String name, java.lang.Object... attributes)
dispatchTarget
- name
- attributes
- var args list of attributes to be passed to underlying
functionspublic static void callSub(Dispatch dispatchTarget, int dispid)
dispatchTarget
- dispid
- public static void callSub(Dispatch dispatchTarget, int dispid, java.lang.Object... attributes)
dispatchTarget
- dispid
- attributes
- var args list of attributes to be passed to underlying
functionpublic static Variant get(Dispatch dispatchTarget, java.lang.String name)
dispatchTarget
- name
- public static Variant get(Dispatch dispatchTarget, int dispid)
dispatchTarget
- dispid
- public static void putRef(Dispatch dispatchTarget, java.lang.String name, java.lang.Object val)
dispatchTarget
- name
- val
- public static void putRef(Dispatch dispatchTarget, int dispid, java.lang.Object val)
dispatchTarget
- dispid
- val
- public static Variant get_CaseSensitive(Dispatch dispatchTarget, java.lang.String name)
dispatchTarget
- name
- NotImplementedException
public static int hasExited(Dispatch disp, int dispid, int lcid)
disp
- dispid
- lcid
- public static int hasExited(Dispatch dispatchTarget)
Sourceforge feature request 2927058
dispatchTarget
- http://jacob-project.sourceforge.net