EventBeanCommand

Package: MachII.framework.commands
Inherits from: framework.Command
An Command for creating and populating a bean in the current event.
Method Summary
public EventBeanCommand init(string beanName, string beanType, string beanFields, boolean reinit)

Used by the framework for initialization.

public boolean execute(Event event, EventContext eventContext)

Executes the command.

private string getBeanFields()
private string getBeanName()
private string getBeanType()
private BeanUtil getBeanUtil()
private boolean getReinit()
public boolean isBeanFieldsDefined()
private void setBeanFields(string beanFields)
private void setBeanName(string beanName)
private void setBeanType(string beanType)
private void setBeanUtil(BeanUtil beanUtil)
private void setReinit(boolean reinit)
Methods inherited from framework.Command:   setParameter , getParameter , setParameters
Method Detail
execute

public boolean execute( Event event, EventContext eventContext )

Executes the command.

Parameters:
Event event
EventContext eventContext

Code:

	<cffunction name="execute" access="public" returntype="boolean"
		hint="Executes the command.">
		<cfargument name="event" type="MachII.framework.Event" required="true" />
		<cfargument name="eventContext" type="MachII.framework.EventContext" required="true" />
		
		<cfset var bean = "" />
		<cfset var reinit = TRUE />
		
		
		<cfif NOT getReinit() AND arguments.event.isArgDefined(getBeanName())>
			<cfset bean = arguments.event.getArg(getBeanName()) />
			
			<cfif isBeanFieldsDefined()>
				<cfset getBeanUtil().setBeanFields(bean, getBeanFields(), arguments.event.getArgs()) />
			<cfelse>
				<cfset getBeanUtil().setBeanAutoFields(bean, arguments.event.getArgs()) />
			</cfif>
		<cfelse>
			<cfif isBeanFieldsDefined()>
				<cfset bean = getBeanUtil().createBean(getBeanType()) />
				<cfset getBeanUtil().setBeanFields(bean, getBeanFields(), arguments.event.getArgs()) />
			<cfelse>
				<cfset bean = getBeanUtil().createBean(getBeanType(), arguments.event.getArgs()) />
			</cfif>			

			<cfset arguments.event.setArg(getBeanName(), bean, getBeanType()) />
		</cfif>
		
		<cfreturn true />
	</cffunction> 

getBeanFields

private string getBeanFields( )

Parameters:

Code:

	<cffunction name="getBeanFields" access="private" returntype="string" output="false">
		<cfreturn variables.beanFields />
	</cffunction> 

getBeanName

private string getBeanName( )

Parameters:

Code:

	<cffunction name="getBeanName" access="private" returntype="string" output="false">
		<cfreturn variables.beanName />
	</cffunction> 

getBeanType

private string getBeanType( )

Parameters:

Code:

	<cffunction name="getBeanType" access="private" returntype="string" output="false">
		<cfreturn variables.beanType />
	</cffunction> 

getBeanUtil

private BeanUtil getBeanUtil( )

Parameters:

Code:

	<cffunction name="getBeanUtil" access="private" returntype="MachII.util.BeanUtil" output="false">
		<cfreturn variables.beanUtil />
	</cffunction> 

getReinit

private boolean getReinit( )

Parameters:

Code:

	<cffunction name="getReinit" access="private" returntype="boolean" output="false">
		<cfreturn variables.reinit />
	</cffunction> 

init

public EventBeanCommand init( string beanName, string beanType, string beanFields, boolean reinit )

Used by the framework for initialization.

Parameters:
string beanName
string beanType
string beanFields
boolean reinit

Code:

	<cffunction name="init" access="public" returntype="EventBeanCommand" output="false"
		hint="Used by the framework for initialization.">
		<cfargument name="beanName" type="string" required="true" />
		<cfargument name="beanType" type="string" required="true" />
		<cfargument name="beanFields" type="string" required="true" />
		<cfargument name="reinit" type="boolean" required="true" />
		
		<cfset setBeanName(arguments.beanName) />
		<cfset setBeanType(arguments.beanType) />
		<cfset setBeanFields(arguments.beanFields) />
		<cfset setReinit(arguments.reinit) />
		
		<cfset setBeanUtil(CreateObject("component", "MachII.util.BeanUtil").init()) />
		
		<cfreturn this />
	</cffunction> 

isBeanFieldsDefined

public boolean isBeanFieldsDefined( )

Parameters:

Code:

	<cffunction name="isBeanFieldsDefined" access="public" returntype="boolean" output="false">
		<cfreturn NOT getBeanFields() EQ '' />
	</cffunction> 

setBeanFields

private void setBeanFields( string beanFields )

Parameters:
string beanFields

Code:

	<cffunction name="setBeanFields" access="private" returntype="void" output="false">
		<cfargument name="beanFields" type="string" required="true" />
		<cfset variables.beanFields = arguments.beanFields />
	</cffunction> 

setBeanName

private void setBeanName( string beanName )

Parameters:
string beanName

Code:

	<cffunction name="setBeanName" access="private" returntype="void" output="false">
		<cfargument name="beanName" type="string" required="true" />
		<cfset variables.beanName = arguments.beanName />
	</cffunction> 

setBeanType

private void setBeanType( string beanType )

Parameters:
string beanType

Code:

	<cffunction name="setBeanType" access="private" returntype="void" output="false">
		<cfargument name="beanType" type="string" required="true" />
		<cfset variables.beanType = arguments.beanType />
	</cffunction> 

setBeanUtil

private void setBeanUtil( BeanUtil beanUtil )

Parameters:
BeanUtil beanUtil

Code:

	<cffunction name="setBeanUtil" access="private" returntype="void" output="false">
		<cfargument name="beanUtil" type="MachII.util.BeanUtil" required="true" />
		<cfset variables.beanUtil = arguments.beanUtil />
	</cffunction> 

setReinit

private void setReinit( boolean reinit )

Parameters:
boolean reinit

Code:

	<cffunction name="setReinit" access="private" returntype="void" output="false">
		<cfargument name="reinit" type="boolean" required="true" />
		<cfset variables.reinit = arguments.reinit />
	</cffunction>