// persistance of objects
variables.com = structNew();
var obj = ''; //local var to hold object
if (arguments.singleton and singletonExists(arguments.objName)) {
return getSingleton(arguments.objName);
}
switch(arguments.objName) {
case "whosonstats":
obj = createObject('component','whosonstats').init();
if (arguments.singleton) { // scope singleton
addSingleton(arguments.objName, obj);
}
return obj;
break;
case "whoson":
obj = createObject('component','whoson').init();
if (arguments.singleton) { // scope singleton
addSingleton(arguments.objName, obj);
}
// inject dependencies through setter
obj.setStats( get('whosonstats', arguments.singleton) );
return obj;
break;
}
if ( StructKeyExists(variables.com, arguments.objName) ){
structDelete(variables.com, arguments.objName);
}