New feature actions can be developed by implementing the interface IFeatureAction or inheriting from the abstract classes FeatureAction<T> or WebApplicationLink<T>.
See an completely implemented
Feature Action Example.
IApplicationLink
The interface FDOT.GIS.Client.Domain.IFeatureAction needs to be implemented by all Feature Actions developed for the framework. The interface allows the application to signal if it can respond to a feature and the logic that should be performed upon linking.
Methods
Name | Return Type | Description |
---|
CanRespondToObject(Feature o) | bool | Should be implemented to tell the framework if the Feature Action can respond to the feature. |
GetDisplayName() | string | Returns the name of the Feature Action for display. |
LinkToApplication(Feature o) | void | The logic of action the Feature Action performs should be located in this method. |
Initialize(IDictionary customSettings) | void | Initializes the Feature Action and allows custom settings from configuration to be used. |
Properties
Name | Type | Description |
---|
IsInitialized | bool | Signals to the framework if the application link is initialized and ready to be used. |
ApplicationLink<T>
The abstract class FDOT.GIS.Client.Domain.FeatureAction<T> allows for easier and flexible implementation of Feature Actions. The pattern used for FeatureAction<T> is to create a data class that encapsulates the data needed for the Feature Action. This data object should be used for the T of FeatureAction<T>. A cooresponding FeatureActionDataIdentifier class should be implemented with this data object.
See an implemented
FeatureAction<T> Example.
Abstract/Virtual Methods
Name | Abstract/Virtual | Return Type | Description |
---|
ConfirmCanRespondToObject(T dataObject) | virtual | bool | Lets the framework know if the feature action can respond to the feature. |
GetDisplayName() | abstract | string | The name displayed for the Feature Action |
OnApplicationLinkExecute(T linkData) | abstract | void | This method is called when the Feature Action is executed. |
OnInitialize(IDictionary customSettings) | virtual | void | Can be overriding to add custom functionality on Feature Action initialize. |
Properties
Name | Type | Description |
---|
DataIdentifiers | IEnumerable<ApplicationLinkDataIdentifier<T>> | Your implementation of ApplicationLinkDataIdentifier should be added to this property. |
WebApplicationLink<T>
The abstract class FDOT.GIS.Client.Domain.WebApplicationLink<T> inherits from FDOT.GIS.Client.Domain.ApplicationLink<T> and adds a support for a custom setting configuration value of webserver. This is setting is stored in the protected property Web Server. This can be used for application links that link out websites that need to be customizable through configuration.
See a complete
WebApplicationLink<T> ExampleFeatureActionDataIdentifier<T>
The FeatureActionDataIdentifier is used in conjunction with FeatureActions for the FeatureAction to get it's data from a feature and to identify if it can link from a feature.
Abstract Methods
Name | Type | Description |
---|
CanLinkFromObject(Feature o) | bool | Used to tell if the FeatureAction can link from the feature. |
GetLinkData(Feature o) | T | Loads the type T from the feature. |
See Also