Why not create a struct/array look-up of client ids to dsns, and have
that put into an application level object? The app level object could
be injected at load time to n number of other objects (listeners,
model, etc).
Then when you need a dsn you pass in the client id for look-up.
Session storage will work of course, but this seems like configuration
to me and could best be served by something more persistent.

Just a thought.

On Nov 7, 1:11 pm, Matthew Woodward <[email protected]> wrote:
> Also if you don't want your listeners referencing the session scope, you
> could have a plugin handle that so to your listener they'd just be getting
> the dsn from the event object.
>
> On Mon, Nov 7, 2011 at 1:09 PM, David D-V Tran <[email protected]>wrote:
>
>
>
>
>
>
>
>
>
> > I have a cms that uses site IDs - I have it check the sites table to pull
> > the correct site ID.  Be sure to also place the check the OnRequest level
> > in the App file to make sure the domain matches up with the one in the db
> > table, if it matches up then it doesn't pull the trigger on invoking the
> > component for customer DSN on page load, only when it mismatches.
>
> > On Mon, Nov 7, 2011 at 3:46 PM, Matthew Woodward 
> > <[email protected]>wrote:
>
> >> Nothing wrong with your listeners referencing session variables, either
> >> directly or through a session facade. You want to avoid that in your
> >> service layer and further back, but there's nothing inappropriate about
> >> your listener knowing about the session scope IMO.
>
> >> On Mon, Nov 7, 2011 at 12:13 PM, RobM <[email protected]> wrote:
>
> >>> I think I understand. I was under the impression that the listener
> >>> should always pass in the DSN and not make the component reference it
> >>> directly.
>
> >>> On Nov 7, 2:57 pm, Matthew Woodward <[email protected]> wrote:
> >>> > The point is you wouldn't initialize the component with that value,
> >>> you'd
> >>> > get it from the session as you need it.
>
> >>> > On Mon, Nov 7, 2011 at 11:51 AM, RobM <[email protected]> wrote:
> >>> > > While the customer dsn is loaded at login, if i don't change the
> >>> > > cached cfc, it will use whatever value was passed in when the init
> >>> > > function was called.
>
> >>> > > If i were to call this in the top of the listener...
>
> >>> > > <cfset variables.my_obj = CreateObject('Component',
> >>> > > 'path.component').init(session.customer_dsn)>
>
> >>> > > it would remain whatever session.customer_dsn was at when the
> >>> > > framework was loaded. It would mean forcing Mach-II to reload every
> >>> > > time someone logged in.
>
> >>> > > On Nov 7, 2:41 pm, David D-V Tran <[email protected]> wrote:
> >>> > > > why don't you do a check instead for the customer ID and load the
> >>> DSN
> >>> > > upon
> >>> > > > session load in a session variable?
>
> >>> > > > On Mon, Nov 7, 2011 at 2:37 PM, RobM <[email protected]> wrote:
> >>> > > > > Because each of our customer's data is stored on separate DSNs,
> >>> and
> >>> > > > > the if the DSN string is passed into an object on load as
> >>> described in
> >>> > > > > the, it stays there until Mach-II is reloaded. This can cause
> >>> customer
> >>> > > > > 1 to read data from customer 2 if Mach-II is not reloaded between
> >>> > > > > customer 1's log out and customer 2's login. My solution was to
> >>> > > > > initialize the referenced objects before the function call, so
> >>> that
> >>> > > > > they would collect the new dsn value from a new login instead of
> >>> the
> >>> > > > > cached dsn value.
>
> >>> > > > > On Nov 7, 2:16 pm, Matthew Woodward <[email protected]>
> >>> wrote:
> >>> > > > > > On Mon, Nov 7, 2011 at 11:11 AM, RobM <[email protected]>
> >>> wrote:
> >>> > > > > > > Hello,
> >>> > > > > > > I'm working on making our existing Mach-ii application
> >>> initialize
> >>> > > the
> >>> > > > > > > objects it needs when it calls a function in the listener as
> >>> > > opposed
> >>> > > > > > > to initializing them on load.
>
> >>> > > > > > Why?
> >>> > > > > > --
> >>> > > > > > Matthew Woodward
> >>> > > > > > [email protected]http://blog.mattwoodward.com
> >>> > > > > > identi.ca / Twitter: @mpwoodward
>
> >>> > > > > > Please do not send me proprietary file formats such as Word,
> >>> > > PowerPoint,
> >>> > > > > > etc. as attachments.
> >>> > > > >http://www.gnu.org/philosophy/no-word-attachments.html
>
> >>> > > > > --
> >>> > > > > To post to this group, send email to
> >>> > > > > [email protected]
> >>> > > > > For more options and to unsubscribe, visit this group at
> >>> > > > >http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
>
> >>> > > > > SVN:http://svn.mach-ii.com/machii/
> >>> > > > > Wiki / Documentation / Tickets:http://trac.mach-ii.com/machii/
>
> >>> > > --
> >>> > > To post to this group, send email to
> >>> > > [email protected]
> >>> > > For more options and to unsubscribe, visit this group at
> >>> > >http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
>
> >>> > > SVN:http://svn.mach-ii.com/machii/
> >>> > > Wiki / Documentation / Tickets:http://trac.mach-ii.com/machii/
>
> >>> > --
> >>> > Matthew Woodward
> >>> > [email protected]http://blog.mattwoodward.com
> >>> > identi.ca / Twitter: @mpwoodward
>
> >>> > Please do not send me proprietary file formats such as Word,
> >>> PowerPoint,
> >>> > etc. as attachments.
> >>>http://www.gnu.org/philosophy/no-word-attachments.html
>
> >>> --
> >>> To post to this group, send email to
> >>> [email protected]
> >>> For more options and to unsubscribe, visit this group at
> >>>http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
>
> >>> SVN:http://svn.mach-ii.com/machii/
> >>> Wiki / Documentation / Tickets:http://trac.mach-ii.com/machii/
>
> >> --
> >> Matthew Woodward
> >> [email protected]
>
> >>http://blog.mattwoodward.com
> >> identi.ca / Twitter: @mpwoodward
>
> >> Please do not send me proprietary file formats such as Word, PowerPoint,
> >> etc. as attachments.
> >>http://www.gnu.org/philosophy/no-word-attachments.html
>
> >> --
> >> To post to this group, send email to
> >> [email protected]
> >> For more options and to unsubscribe, visit this group at
> >>http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
>
> >> SVN:http://svn.mach-ii.com/machii/
> >> Wiki / Documentation / Tickets:http://trac.mach-ii.com/machii/
>
> >  --
> > To post to this group, send email to
> > [email protected]
> > For more options and to unsubscribe, visit this group at
> >http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
>
> > SVN:http://svn.mach-ii.com/machii/
> > Wiki / Documentation / Tickets:http://trac.mach-ii.com/machii/
>
> --
> Matthew Woodward
> [email protected]http://blog.mattwoodward.com
> identi.ca / Twitter: @mpwoodward
>
> Please do not send me proprietary file formats such as Word, PowerPoint,
> etc. as attachments.http://www.gnu.org/philosophy/no-word-attachments.html

-- 
To post to this group, send email to [email protected]
For more options and to unsubscribe, visit this group at 
http://groups.google.com/group/mach-ii-for-coldfusion?hl=en

SVN: http://svn.mach-ii.com/machii/
Wiki / Documentation / Tickets: http://trac.mach-ii.com/machii/

Reply via email to