Changes between Initial Version and Version 6 of Ticket #301
- Timestamp:
- 01/17/10 00:59:55 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #301
- Property priority changed from highest to normal
- Property milestone changed from 2.0.1 to 3.2
- Property severity changed from blocker to normal
-
Ticket #301 – description
initial v6 1 The below components and files use the session scope directly when they should be using the ModelGlue_APP_KEY to group the sub application session variables to prevent collisions with other sub applications running in the same CF application.1 The below components and files use the session scope directly when they should be using the !ModelGlue_APP_KEY to group the sub application session variables to prevent collisions with other sub applications running in the same CF application. 2 2 3 3 Currently two applications can run into each other with async requests or other state variables in the session in certain load situations. 4 4 5 5 Affected Files: 6 ModelGlue.unity.eventrequest.EventContext7 ModelFlue.unity.statebuilder.StateBuilder8 ModelGlue.unity.framework.ModelGlue9 ModelGlue.unity.loader.FrameworkLoader10 ModelGlue/unity/ModelGlue.cfm11 6 12 The files should be using session[ModelGlue_APP_Key] instead of session, which requires some minor changes to the ModelGlue component. 7 !ModelGlue.unity.eventrequest.!EventContext 13 8 14 I suggest adding a method to ModelGlue.unity.framework.ModelGlue: 9 !ModelFlue.unity.statebuilder.!StateBuilder 10 11 !ModelGlue.unity.framework.!ModelGlue 12 13 !ModelGlue.unity.loader.!FrameworkLoader 14 15 !ModelGlue/unity/ModelGlue.cfm 16 17 The files should be using session[!ModelGlue_APP_Key] instead of session, which requires some minor changes to the !ModelGlue component. 18 19 I suggest adding a method to !ModelGlue.unity.framework.!ModelGlue: 15 20 16 21 {{{ … … 30 35 }}} 31 36 32 Then the EventContext and StateBuilder components can use variables._framework.getSessionScope() to access the currently active session and ModelGlue.cfm can use _ModelGlue.framework.getSessionScope(). Of course theModelGlue component can just use getSessionScope() directly.37 Then the !EventContext and !StateBuilder components can use variables._framework.getSessionScope() to access the currently active session and !ModelGlue.cfm can use _ModelGlue.framework.getSessionScope(). Of course the !ModelGlue component can just use getSessionScope() directly. 33 38 34 The ModelGlue.unity.loader.FrameworkLoader component should also be changed to use the below code instead of generating a random key with CreateUUID(), then adding and deleting it. I doubt very much that there will ever be a collision with the UUID, but using a simple structKeyExists() removes that chance entirely, and also removes 2 function calls and one local variable!39 The !ModelGlue.unity.loader.!FrameworkLoader component should also be changed to use the below code instead of generating a random key with CreateUUID(), then adding and deleting it. I doubt very much that there will ever be a collision with the UUID, but using a simple structKeyExists() removes that chance entirely, and also removes 2 function calls and one local variable! 35 40 36 41 {{{
![(please configure the [header_logo] section in trac.ini)](/ModelGlue.com/trac.cgi/chrome/site/your_project_logo.png)