| Inherits from:
MachII.framework.EventFilter
|
| I am an event filter that manages validation of a form object. |
| Method Summary |
|---|
|
public
boolean
|
filterEvent(Event event, EventContext eventContext, [struct paramArgs="#structNew()#"])
I am invoked by the Mach II framework.
|
public
boolean filterEvent( Event event, EventContext eventContext, [struct paramArgs="#structNew()#"] )
I am invoked by the Mach II framework.
Parameters:
| Event event |
| EventContext eventContext |
| [struct paramArgs="#structNew()#"] |
Code:
<cffunction name="filterEvent" access="public" returntype="boolean"
displayname="filterEvent method" hint="I am invoked by the Mach II framework.">
<cfargument name="event" type="MachII.framework.Event" required="true"
displayname="event object" hint="I am the current event object created by the Mach II framework." />
<cfargument name="eventContext" type="MachII.framework.EventContext" required="true"
displayname="eventContext object" hint="I am the current event context object created by the Mach II framework." />
<cfargument name="paramArgs" type="struct" required="false" default="#structNew()#"
displayname="paramArgs structure" hint="I am the structure containing the parameters specified in the filter invocation in mach-ii.xml." />
<cfscript>
var formObjectName = "";
var invalidEvent = "";
var clearEventQueue = false;
if ( structKeyExists( arguments.paramArgs, "formObjectName" ) ) {
formObjectName = arguments.paramArgs.formObjectName;
} else {
formObjectName = getParameter( "formObjectName", "" );
}
if ( structKeyExists( arguments.paramArgs, "invalidEvent" ) ) {
invalidEvent = arguments.paramArgs.invalidEvent;
} else {
invalidEvent = getParameter( "invalidEvent", "" );
}
if ( structKeyExists( arguments.paramArgs, "clearEventQueue" ) ) {
clearEventQueue = arguments.paramArgs.clearEventQueue;
} else {
clearEventQueue = getParameter( "clearEventQueue", false );
}
if ( arguments.event.getArg( formObjectName ).validate() ) {
return true; // allow processing to continue
} else {
if ( clearEventQueue ) {
arguments.eventContext.clearEventQueue();
}
arguments.event.setArg( "formObjectName", formObjectName );
arguments.eventContext.announceEvent( invalidEvent, arguments.event.getArgs() );
return false; // abort the current event handler
}
</cfscript>
</cffunction>