com.esri.arcgis.server
Class BaseSOEPropertyPage

java.lang.Object
  extended by com.esri.arcgis.framework.BasePropertyPage
      extended by com.esri.arcgis.server.BaseSOEPropertyPage
All Implemented Interfaces:
IAGSSOEParameterPage, IComPropertyPage, Serializable

public abstract class BaseSOEPropertyPage
extends BasePropertyPage
implements IAGSSOEParameterPage

BaseSOEPropertyPage is the base class which Java implementations of a Server Object Extension(SOE) property page should extend from.

Implementations of an SOE Property page should define a Java user interface that derives from javax.swing.JFrame. It is recommended to keep the implementation of the user interface seperate from the implementation of the class that derives from BaseSOEPropertyPage. For example,

MySOEPropertyPage extends BaseSOEPropertyPage {
Form form;
...
JFrame initGUI(HashMap soPropMap, HashMap extnPropMap) {
// Using the properties from soPropMap and extnPropMap to initialize the UI if necessary
form = new Form();
return form;
}
}

See Also:
Serialized Form

Field Summary
 
Fields inherited from interface com.esri.arcgis.catalogUI.IAGSSOEParameterPage
IID, IID2cc34141_016d_4ec0_913e_4d803ee43b8f, xxDummy
 
Fields inherited from interface com.esri.arcgis.framework.IComPropertyPage
IID, IID76951cc6_dbb1_11d2_b868_00600802e603, xxDummy
 
Constructor Summary
BaseSOEPropertyPage()
           
 
Method Summary
 boolean applies(ISet objects)
          Indicates if the page applies to the specified objects.
 void apply()
          Applies any changes to the object(s).
abstract  void apply(HashMap soPropMap, HashMap extnPropMap)
          Applies changes to the Server Object and Server Object Extension properties.
 IPropertySet getExtensionProperties()
          Extension Properties.
 int getPriority()
          The page priority.
abstract  String getServerObjectExtensionType()
          Server object extension type.
 IPropertySet getServerObjectProperties()
          Extension Properties.
abstract  String getServerObjectType()
          Server object type.
 String getTitle()
          The title of the property page.
 JFrame initGUI()
           
abstract  JFrame initGUI(HashMap soPropMap, HashMap extnPropMap)
          Initializes the User Interface with default Server Object and Server Object Extension properties.
 void setExtensionPropertiesByRef(IPropertySet extnProps)
          Extension Properties.
 void setObjects(ISet objects)
          Supplies the page with the object(s) to be edited.
 void setServerObjectPropertiesByRef(IPropertySet soProps)
          Extension Properties.
 
Methods inherited from class com.esri.arcgis.framework.BasePropertyPage
activate, cancel, deactivate, getHeight, getHelpContextID, getHelpFile, getWidth, hide, isPageDirty, pageChanged, repaintJFrame, setPageSiteByRef, setPriority, setTitle, show
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseSOEPropertyPage

public BaseSOEPropertyPage()
Method Detail

applies

public final boolean applies(ISet objects)
                      throws IOException,
                             AutomationException
Description copied from class: BasePropertyPage
Indicates if the page applies to the specified objects.

Specified by:
applies in interface IComPropertyPage
Specified by:
applies in class BasePropertyPage
Parameters:
objects - A reference to a (in)
Returns:
The pApplies
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTitle

public final String getTitle()
                      throws IOException,
                             AutomationException
Description copied from class: BasePropertyPage
The title of the property page.

Specified by:
getTitle in interface IComPropertyPage
Specified by:
getTitle in class BasePropertyPage
Returns:
The title
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPriority

public final int getPriority()
                      throws IOException,
                             AutomationException
Description copied from class: BasePropertyPage
The page priority. The higher the priority, the sooner the page appears in the containing property sheet.

Specified by:
getPriority in interface IComPropertyPage
Specified by:
getPriority in class BasePropertyPage
Returns:
The priority
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

apply

public final void apply()
                 throws IOException,
                        AutomationException
Description copied from class: BasePropertyPage
Applies any changes to the object(s).

Specified by:
apply in interface IComPropertyPage
Specified by:
apply in class BasePropertyPage
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExtensionPropertiesByRef

public final void setExtensionPropertiesByRef(IPropertySet extnProps)
                                       throws IOException,
                                              AutomationException
Extension Properties.

Specified by:
setExtensionPropertiesByRef in interface IAGSSOEParameterPage
Parameters:
extProps - A reference to a (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setServerObjectPropertiesByRef

public final void setServerObjectPropertiesByRef(IPropertySet soProps)
                                          throws IOException,
                                                 AutomationException
Extension Properties.

Specified by:
setServerObjectPropertiesByRef in interface IAGSSOEParameterPage
Parameters:
extProps - A reference to a (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

initGUI

public abstract JFrame initGUI(HashMap soPropMap,
                               HashMap extnPropMap)
Initializes the User Interface with default Server Object and Server Object Extension properties. This method creates and initializes a user interface frame that derives from javax.swing.JFrame and returns it to the ArcGIS runtime. This method is passed in two HashMaps that contain the default properties of the Server Object and the Server Object Extension, respectively. Implementations can read these properties to initialize their user interfaces.

Implementations of this method should not call methods to realize the JFrame; example, setVisible(true). Visibility of the JFrame and it's life-cycle management is performed internally by the ArcGIS runtime.

It is safe to use the ArcObjects API within this method.

Parameters:
soPropMap - the HashMap containing default Server Object properties
extnPropMap - the HashMap containing default Server Object extension properties
Returns:
the user interface

initGUI

public final JFrame initGUI()
Specified by:
initGUI in class BasePropertyPage

apply

public abstract void apply(HashMap soPropMap,
                           HashMap extnPropMap)
                    throws IOException,
                           AutomationException
Applies changes to the Server Object and Server Object Extension properties. Implementations of this method should obtain the latest values of any SO/SOE properties from the property page UI and store them in the respective HashMaps supplied as arguments to this method.

Since this method is not called on Java's EDT thread it is unsafe to modify properties of user interface elements residing on the property page.

It is safe to use the ArcObjects API within this method.

Parameters:
soPropMap - the Server Object properties HashMap to be updated
extnPropMap - the Server Object Extension properties HashMap to be updated
Throws:
IOException
AutomationException

setObjects

public final void setObjects(ISet objects)
                      throws IOException,
                             AutomationException
Description copied from class: BasePropertyPage
Supplies the page with the object(s) to be edited.

Specified by:
setObjects in interface IComPropertyPage
Specified by:
setObjects in class BasePropertyPage
Parameters:
objects - A reference to a (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExtensionProperties

public final IPropertySet getExtensionProperties()
                                          throws IOException,
                                                 AutomationException
Extension Properties.

Specified by:
getExtensionProperties in interface IAGSSOEParameterPage
Returns:
A reference to a
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getServerObjectExtensionType

public abstract String getServerObjectExtensionType()
                                             throws IOException,
                                                    AutomationException
Server object extension type.

Specified by:
getServerObjectExtensionType in interface IAGSSOEParameterPage
Returns:
The serverObjExtType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getServerObjectProperties

public final IPropertySet getServerObjectProperties()
                                             throws IOException,
                                                    AutomationException
Extension Properties.

Specified by:
getServerObjectProperties in interface IAGSSOEParameterPage
Returns:
A reference to a
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getServerObjectType

public abstract String getServerObjectType()
                                    throws IOException,
                                           AutomationException
Server object type.

Specified by:
getServerObjectType in interface IAGSSOEParameterPage
Returns:
The serverObjType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.