I have no idea, ie i'd need more of an idea of what the other methods
are doing in order to give an informed response.
my only shot in the dark would be not to return a chained method as a
result, but var that and then returned the result..
ie:
return getClassVariable( variableName = "hash" & hash( getMetaData(
this ).name ), scope = getSingletonScope() );
would be
result = getClassVariable( variableName = "hash" & hash( getMetaData(
this ).name ), scope = getSingletonScope() );
return result
I say this as i've seen un-expected results when doing the earlier version.
On 7/27/05, Taco Fleur <[EMAIL PROTECTED]> wrote:
>
>
>
> I was wondering if someone can see why I can't seem to get my singleton from
> the following function?
>
>
>
> <cffunction
>
> access="private"
>
> name="getInstance"
>
> output="false"
>
> returntype="Object"
>
> displayname="Get Instance"
>
> hint="Returns an instance of the object, gets it
> from the persistent scope if the class is a singleton.">
>
>
>
> <cfscript>
>
> var mySingletonPath = "";
>
> // Check if this object is a singleton
>
> if ( isSingleton() )
>
> {
>
> mySingletonPath =
> getSingletonScope() & ".hash" & getClassPathAsHash() & ".hash" & hash(
> getMetaData( this ).name );
>
> // Check if the
> singleton is instantiated
>
> if ( NOT isDefined(
> mySingletonPath ) )
>
> {
>
>
> setInstanceVariable( variableName = "initialized", value = true );
>
>
> setClassVariable( variableName = "hash" & hash( getMetaData( this ).name ),
> value = this, scope = getSingletonScope() );
>
> }
>
> // Return the Singleton
>
> //getClassVariable(
> variableName = "hash" & hash( getMetaData( this ).name ), scope =
> getSingletonScope() ).dumpInstance();abort();
>
> return
> getClassVariable( variableName = "hash" & hash( getMetaData( this ).name ),
> scope = getSingletonScope() );
>
> }
>
> setInstanceVariable( variableName = "initialized",
> value = true );
>
> // Return a new instance of this object
>
> return this;
>
> </cfscript>
>
>
>
> </cffunction>
>
>
>
> Let's say if I set a variable in the object with a value of "1", instantiate
> the object, change the value to "2" save the object and instantiate it
> again, and then call dumpInstance() I expect the value to be "1" not "2".
>
>
>
> When I uncomment the following line it outputs the expected result, i.e. an
> instance variable with the value "1"
>
> //getClassVariable( variableName = "hash" & hash( getMetaData( this ).name
> ), scope = getSingletonScope() ).dumpInstance();abort();
>
>
>
> But when I later dump it from the file that instantiates the object it
> outputs "2"
>
> FormProcess = new ( "com.pacificMomentum.data.FormProcess"
> ).init();
>
> FormProcess.dumpInstance();abort();
>
>
>
> PS.
>
> dumpInstance() is one of my own methods which dumps instance variables BTW.
>
> The init() method in the object returns getInstance() BTW i.e.
>
> return getInstance();
>
>
>
> ________________________________
>
> Taco Fleur - E-commerce Development Manager
>
> Shelco Searches & Services
>
> An Authorised ASIC Information Broker
>
> www.shelco.com.au
>
> Ph: + 61 7 3236 2605
>
>
>
> ---
> You are currently subscribed to cfaussie as: [EMAIL PROTECTED]
> To unsubscribe send a blank email to
> [EMAIL PROTECTED] Aussie Macromedia
> Developers: http://lists.daemon.com.au/
--
Regards,
Scott Barnes
http://www.mossyblog.com
---
You are currently subscribed to cfaussie as: [email protected]
To unsubscribe send a blank email to [EMAIL PROTECTED]
Aussie Macromedia Developers: http://lists.daemon.com.au/