com.jniwrapper.win32.com.server
Class IDispatchServer

java.lang.Object
  extended bycom.jniwrapper.win32.com.server.IUnknownServer
      extended bycom.jniwrapper.win32.com.server.IDispatchServer
All Implemented Interfaces:
AutoDeleteParameter, IDispatch, IUnknown
Direct Known Subclasses:
DispatchComServer

public abstract class IDispatchServer
extends IUnknownServer
implements IDispatch

This class provides default server-side implementation of IDispatch interface.


Field Summary
 
Fields inherited from interface com.jniwrapper.win32.automation.IDispatch
INTERFACE_IDENTIFIER
 
Constructor Summary
IDispatchServer(CoClassMetaInfo classImpl)
           
 
Method Summary
 void getIDsOfNames(IID riid, ComplexArray rgszNames, UInt cNames, LocaleID lcid, ComplexArray rgdispid)
           
 ITypeInfo getTypeInfo(UInt itinfo, LocaleID lcid)
           
 UInt getTypeInfoCount()
           
 void invoke(DispID dispidMember, IID riid, LocaleID lcid, UInt16 wFlags, DispParams pdispparams, Variant pvarResult, ExcepInfo pexcepinfo, UInt puArgErr)
           
 boolean isDispInterface()
          Returns the flag which specifies whether this server object is treated as server for dispinterface.
This flag affects on the order of parameters during invocation of its methods.
 boolean isUseCaseSensitiveNameComparison()
          Returns flag which determines whether this server uses case sensitive comparison of method names.
By default this parameter is true.
protected  void registerMethods(java.lang.Class interfaceClass)
           
protected  void registerMethods(java.lang.Class interfaceClass, boolean dispInterface)
           
 void setDispInterface(boolean dispInterface)
          Specifies whether this object is the server for dispinterface.
 void setUseCaseSensitiveNameComparison(boolean useCaseSensitiveNames)
          Specifies whether this server should use case sensitive comparison of method names.
By default this parameter is true.
When parameter is true then it will not be possible to invoke for example its method which is declared as "doInt" using name "DoIt"
 
Methods inherited from class com.jniwrapper.win32.com.server.IUnknownServer
addRef, addRefAggregated, create, destroy, doDestroy, doQueryInterface, getClassImpl, getRefCount, isAutoDelete, isNull, queryInterface, queryInterfaceAggregated, release, releaseAggregated, setAutoDelete, setNull
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.jniwrapper.win32.com.IUnknown
addRef, isNull, queryInterface, release, setNull
 
Methods inherited from interface com.jniwrapper.AutoDeleteParameter
isAutoDelete, setAutoDelete
 

Constructor Detail

IDispatchServer

public IDispatchServer(CoClassMetaInfo classImpl)
Method Detail

getTypeInfo

public ITypeInfo getTypeInfo(UInt itinfo,
                             LocaleID lcid)
                      throws ComException
Specified by:
getTypeInfo in interface IDispatch
Parameters:
itinfo - [in]
lcid - [in]
Throws:
ComException

getIDsOfNames

public void getIDsOfNames(IID riid,
                          ComplexArray rgszNames,
                          UInt cNames,
                          LocaleID lcid,
                          ComplexArray rgdispid)
                   throws ComException
Specified by:
getIDsOfNames in interface IDispatch
Parameters:
riid - [in]
rgszNames - [in]
cNames - [in]
lcid - [in]
rgdispid - [out]
Throws:
ComException

getTypeInfoCount

public UInt getTypeInfoCount()
                      throws ComException
Specified by:
getTypeInfoCount in interface IDispatch
Throws:
ComException

invoke

public void invoke(DispID dispidMember,
                   IID riid,
                   LocaleID lcid,
                   UInt16 wFlags,
                   DispParams pdispparams,
                   Variant pvarResult,
                   ExcepInfo pexcepinfo,
                   UInt puArgErr)
            throws ComException
Specified by:
invoke in interface IDispatch
Parameters:
dispidMember - [in]
riid - [in]
lcid - [in]
wFlags - [in]
pdispparams - [in,out]
pvarResult - [out]
pexcepinfo - [out]
puArgErr - [out]
Throws:
ComException

registerMethods

protected void registerMethods(java.lang.Class interfaceClass)

registerMethods

protected void registerMethods(java.lang.Class interfaceClass,
                               boolean dispInterface)

isDispInterface

public boolean isDispInterface()
Returns the flag which specifies whether this server object is treated as server for dispinterface.
This flag affects on the order of parameters during invocation of its methods.

Returns:
true if this server acts as dispiniterface; false otherwise.

setDispInterface

public void setDispInterface(boolean dispInterface)
Specifies whether this object is the server for dispinterface.
This flag affects on the order of parameters during invocation of its methods.

Parameters:
dispInterface - true means that this object should act as server for dispinterface; false otherwise.

isUseCaseSensitiveNameComparison

public boolean isUseCaseSensitiveNameComparison()
Returns flag which determines whether this server uses case sensitive comparison of method names.
By default this parameter is true.

Returns:
the flag which determines whether this server uses case sensitive comparison of method names.

setUseCaseSensitiveNameComparison

public void setUseCaseSensitiveNameComparison(boolean useCaseSensitiveNames)
Specifies whether this server should use case sensitive comparison of method names.
By default this parameter is true.
When parameter is true then it will not be possible to invoke for example its method which is declared as "doInt" using name "DoIt"

Parameters:
useCaseSensitiveNames - new mode.