Thanks Guys,

@Chris - I didn't realize I could extend the event context - that's really 
great (have a bunch of ideas I can implement with that)

@Dan - That's fair enough - if you don't feel there is a benefit then it's no 
problem. I shall use Chris's suggested approach.

Robert

On 19 Dec 2011, at 14:40, Dan Wilson wrote:

> It would be simple to add in Robert, but I'm not sure what it adds over the 
> current implementation (That's been in there since V1).
> 
> The way I read this in my head is:
> 
> event.getValue("Foo", "Bar");
> 
> Gimme the value of Foo in the event, and if you don't have one, set event.Foo 
> to bar and gimme Foo.
> 
> DW
> 
> 
> 
> 
> On Mon, Dec 19, 2011 at 9:25 AM, Robert Rawlins <[email protected]> 
> wrote:
> Hi Dan,
> 
> You're quite right - it does sort of do it. I use the getValue default 
> argument on a regular basis within my views - but I hadn't realised that it 
> would set the value too if it didn't already exist before returning it.
> 
> This will certainly do the job - it just looks a little odd from a semantic 
> point of view within the controller. Calling get when what I'm really 
> intending to do it set.
> 
> Given that it's a simple implementation do you think there is a case for 
> adding a new method to the API as I suggested? It would make code within the 
> controller more meaningful if I was calling pramValue() I think.
> 
> Robert
> 
> On 19 Dec 2011, at 14:11, Dan Wilson wrote:
> 
>> I think the event.getValue() method sort of does this.
>> 
>> Take a look here:  
>> http://docs.model-glue.com/wiki/ReferenceMaterials/EventApi#GetValuename:stringdefault:any
>>  
>> 
>> 
>> 
>> DW
>> 
>> On Mon, Dec 19, 2011 at 7:11 AM, Rawlins <[email protected]> wrote:
>> Hello Guys,
>> 
>> I'm finding myself with an increasing need to param a value into the event 
>> (set it only if it does not already exist).
>> 
>> One example use case for this is form validation.
>> 
>> In my controller method for the form I need a validation result object, 
>> which contains all the errors and other failure information.
>> 
>> This object could come from two places - It could be that the user has been 
>> passed back to this form page after a failed validation, with the result 
>> object preserved in the event, or if one doesn't already exist and this is 
>> the first time viewing the form, I'll create a new result object for them.
>> 
>> This results in handler code that looks something like this:
>> 
>>                      <!--- Param the validation result into the object too. 
>> --->
>>                      <cfif NOT event.valueExists("ValidationResult")>
>>                              <cfset event.setValue("ValidationResult", 
>> Beans.ValidateThis.newResult()) />
>>                      </cfif>
>> 
>> This works just fine, but it's needlessly verbose. I'd like to propose a 
>> change to the event object API that makes this much easier - here are a 
>> couple of ideas:
>> 
>> event.paramValue('name', 'value');
>> 
>> or a modification to the current setValue() method, which adds a 3rd 
>> argument that defines if the value should be overwritten, if false and a 
>> previous value exists for the key then it's left intact.
>> 
>> event.setValue("name", "value", false);
>> 
>> Does anyone else have some ideas on this? am I looking at this situation in 
>> completely the wrong way? does something already exist like this?
>> 
>> Thanks.
>> 
>> Robert
>> 
>> -- 
>> Model-Glue Sites:
>> Home Page: http://www.model-glue.com
>> Documentation: http://docs.model-glue.com
>> Bug Tracker: http://bugs.model-glue.com
>> Blog: http://www.model-glue.com/blog
>>  
>> You received this message because you are subscribed to the Google
>> Groups "model-glue" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/model-glue?hl=en
>> 
>> 
>> 
>> -- 
>> Plutarch - "The mind is not a vessel to be filled but a fire to be kindled."
>> 
>> -- 
>> Model-Glue Sites:
>> Home Page: http://www.model-glue.com
>> Documentation: http://docs.model-glue.com
>> Bug Tracker: http://bugs.model-glue.com
>> Blog: http://www.model-glue.com/blog
>>  
>> You received this message because you are subscribed to the Google
>> Groups "model-glue" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/model-glue?hl=en
> 
> 
> -- 
> Model-Glue Sites:
> Home Page: http://www.model-glue.com
> Documentation: http://docs.model-glue.com
> Bug Tracker: http://bugs.model-glue.com
> Blog: http://www.model-glue.com/blog
>  
> You received this message because you are subscribed to the Google
> Groups "model-glue" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/model-glue?hl=en
> 
> 
> 
> -- 
> Plutarch - "The mind is not a vessel to be filled but a fire to be kindled."
> 
> -- 
> Model-Glue Sites:
> Home Page: http://www.model-glue.com
> Documentation: http://docs.model-glue.com
> Bug Tracker: http://bugs.model-glue.com
> Blog: http://www.model-glue.com/blog
>  
> You received this message because you are subscribed to the Google
> Groups "model-glue" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/model-glue?hl=en

-- 
Model-Glue Sites:
Home Page: http://www.model-glue.com
Documentation: http://docs.model-glue.com
Bug Tracker: http://bugs.model-glue.com
Blog: http://www.model-glue.com/blog

You received this message because you are subscribed to the Google
Groups "model-glue" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/model-glue?hl=en

Reply via email to