Click or drag to resize

ApplicationExtensionBase Class

Serves as a base class for extensions that handle application events.
Inheritance Hierarchy

Namespace:  NetQuarry
Assembly:  EAP.Core (in EAP.Core.dll) Version: (
public class ApplicationExtensionBase : ExtensionBase

The ApplicationExtensionBase type exposes the following members.

Public methodApplicationExtensionBase
Initializes a new instance of the ApplicationExtensionBase class
Public propertyApplication
Returns the application object.
Protected propertyIsPlatform
Gets whether or not the extension is a platform extension vs. a custom extension.
(Inherited from ExtensionBase.)
Public propertyOwner
Gets/Sets the owner of this object
(Inherited from ExtensionBase.)
Public propertyProperties
Returns this instance's properties.
(Inherited from ExtensionBase.)
Public propertyCode exampleTextItems
Returns a collection of TextItems loaded from metadata related to this component.
(Inherited from ExtensionBase.)
Public methodAfterAuthenticate
Fired immediately after the configured IAuthenticationProvider object's Authenticate(String, String, NameValueCollection, Int64) method is called. At this point the user has been authenticated and the profiles for the user have been loaded.
Public methodAfterLoad
Called immediately after the application is loaded.
Public methodAfterSendMail
Called after sending email and after the email is logged. Return values are ignored, throw an exception if an error happens in the after event.
Public methodAlert
Called when an an alert is about to be delivered to the user. Such alerts include user messages created using DisplayMessage(Alert) or one of its overloads.
Public methodAuthenticationFailed
Fired immediately when the configured IAuthenticationProvider object's Authenticate(String, String, NameValueCollection, Int64) method fails. This event gives us the opportunity to perform certain actions when this event is fired. An example use-case for this event would be to capture the fact that authentication failed in an audit table / database.
Public methodBeforeAuthenticate
Fired immediately before the configured IAuthenticationProvider object's Authenticate(String, String, NameValueCollection, Int64) method is called. This event give you an opportunity to change the user and password of the user being logged in. If you return any other value besides Continue an exception is thrown and the login is cancelled.
Public methodBeforeLoadProfiles
Called before profiles are loaded by the IAuthenticationProvider. Currently (version 2.4) only the DatabaseAuthenticationProvider fires this event.
Public methodBeforeSendMail
Called before sending email and before the email is logged. Set e.Result to Cancel to stop sending and exit, ContinueNoExec to skip sending.
Public methodBeforeShowReport
Called immediately before showing a report resulting in the ApplicationBeforeShowReport event being fired. This is part of the platform security mechanism used to prevent inproper access to SSRS reports.
Public methodBeginTwoFactorAuth
Called to start the 2-factor authentication process. The normal result here would be to send a text or email with the code and set the ValidationPage and Profiles properties on the e parameter. If the ValidationPage value is set then, following this event, a redirect to the page will be performed. The 2-factor authentication code to send will already have been stored and is provided in the AuthCode. You can set AuthCode and/or AuthCodeExpires during this event if you want different values and those new values will be stored.
Public methodBreadcrumbs
Called during Breadcrumbs(IAppContext, BreadcrumbsEventArgs) creation to provide the application with an opportunity to construct a custom breadcrumb trail instead of the standard platform breadcrumb trail. Breadcrumbs are normally automatically constructed by the platform to represent a navigation history, but by handling this event your application can create a custom breadcrumb trail. One example of a custom breadcrumb trail would be a breadcrumb trail representing the application's object hierarchy rather than a navigation history. Before constructing the standard platform breadcrumb trail, the ApplicationBreadcrumbs event is fired. If the event handler returns a DataChanged result then the Breadcrumbs will be used instead of the standard breadcrumbs. You can return ContinueNoExec to suppress the breadcrumb trail. Note that you can call the GetBreadcrumbs(IAppContext, String) method during the event handling to get the standard breadcrumbs.
Public methodCallReceived
Fired when an incoming call is received by the application.
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetMailService
Called before the Mail Service is constructed. This happens before the BeforeSendMail event
Protected methodGetOwnerName
Gets a descriptive name for the provided object (which is presumably the extension owner object).
(Inherited from ExtensionBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodHandleEvent
Method overridden in dervied classes that handles type specfic events.
(Overrides ExtensionBaseHandleEvent(ExtensionEvents, Object, EAPEventArgs).)
Public methodInfo
Return requested information about the extension.
(Inherited from ExtensionBase.)
Public methodMailReceived
Called when an email message is parsed by the SendGrid parse API.
Public methodMapperLoad
Called by a IMapper at the end of its Load, immediately following the mapper's MapperAfterLoad event. This provides the application with the opportunity to "hook" every mapper. One possible use would be to add a "global" extension to every mapper.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodMessageReceived
Fired when an incoming message is received by the application.
Public methodMessageStatus
Fired when a message is delivered, sent, or failed.
Public methodOnEvent
IExtension.OnEvent handler. Note that generally speaking, you will want to override the individual methods specific to the event and not implement the interface directly.
(Inherited from ExtensionBase.)
Public methodOnPasswordChange
Called when the password is changed by a user
Protected methodOnSetOwner
When the Owner is attached to this extension, verifies that the object an application object (implementing IAppContext). Attaching any other object indicates that this extension was likely attached to the wrong type of object and results in a devlog to that effect.
(Overrides ExtensionBaseOnSetOwner.)
Public methodOnUnload
Notifies the extension that it should perform any cleanup necessary just prior to being unloaded.
(Inherited from ExtensionBase.)
Public methodPageHtml
Called during page initialization in response to a ApplicationPageHtml event. Currently this is called for some HTML-only pages which are typically the result of AJAX requests.

A common use for this event is to register application-wide .js and .css files.

This event is NOT fired for pages built from a standard IPageTemplate-implementing template. For such, the ApplicationPageInit event is fired instead.

Public methodPageInit
Called during page initialization in response to a ApplicationPageInit event. Currently this is called for all pages built from a standard IPageTemplate-implementing template. This includes the ConsoleTemplate, BootConsoleTemplate, WizTemplate, TabbedSubformTemplate, ExpandedSubformTemplate, and PopupDialogTemplate as well as other special-purpose templates. The event is fired at the end of the standard page template initialization, but before template-specific initialization. In essense this means that the event is fired mid-initialization and the extact state of the initialization will vary from template-type to template-type.

A common use for this event is to register application-wide .js and .css files.

For HTML-only pages, the ApplicationPageHtml event may be fired instead.

Public methodPasswordChanged
The password has been changed. Fired before email is sent to the user. See related events PasswordReset(IAppContext, ApplicationPasswordArgs) and PasswordSend(IAppContext, ApplicationPasswordArgs).
Public methodPasswordReset
The password has been reset. Fired before email is sent to the user. See related events PasswordChanged(IAppContext, ApplicationPasswordArgs) and PasswordSend(IAppContext, ApplicationPasswordArgs).
Public methodPasswordSend
The password is about to be sent to the user. Fired before email is sent to the user. See related events PasswordChanged(IAppContext, ApplicationPasswordArgs) and PasswordReset(IAppContext, ApplicationPasswordArgs).
Public methodToString
Returns a String that represents the current Object.
(Inherited from Object.)
Public methodVoiceDial
Fired when an outbound call is made through Dial(String, String, String) (or any Dial overload).
Public methodVoiceStatus
Fired when call status changes.
Public methodWakeUp
Called after the application has been re-initialized (databases reconnected, pages and navigators reloaded, if necessary)
Public methodWebhook
Called when a webhook is processed.
Public methodWebServiceEvent
Fired when an incoming WebService request is received by the application.
Public methodZoomMeetingWebhook
Called when the Zoom service receives a meeting webhook request. See IZoom for more information about the Zoom service. Examples of Zoom meeting events include:
  1. meeting.started
  2. meeting.ended
  3. meeting.participant_joined
  4. meeting.participant_left
  5. meeting.participant_jbh_waiting
Extension Methods
Public Extension MethodEqualValue
Determines if the object value is equal to another object. If the two objects are null, then this returns true. There is special handling for guid comparisons (since a guid could be a string formatted in up to 3 different ways). If the special guid handling is not performed, then the object.Equals method is used.
(Defined by EAPUtil.)
See Also