variables.cacheVarName = "adfMemCache"; variables.cacheDataType = "query"; // array,struct,query,string - Default: Query return variables.cacheVarName; variables.cacheVarName = arguments.cacheVarName; return variables.cacheDataType; variables.cacheDataType = arguments.cacheDataType; var retData = StructNew(); var cacheVarName = getMemCacheVarName(); lock timeout="60" name="#cacheVarName#" type="readonly" { if ( StructKeyExists(application,cacheVarName) ) retData = application[cacheVarName]; else retData = setMemCacheDefaults(key=""); } return retData; var retData = StructNew(); var cacheVarName = getMemCacheVarName(); lock timeout="60" name="#cacheVarName#" type="readonly" { if ( StructKeyExists(application,cacheVarName) ) { if ( LEN(TRIM(arguments.key)) ) { if ( StructKeyExists(application[cacheVarName],arguments.key) AND StructKeyExists(application[cacheVarName],"datetimestamp") ) retData = application[cacheVarName][arguments.key]; else retData = setMemCacheDefaults(key=arguments.key); } else { if ( StructKeyExists(application[cacheVarName],"datetimestamp") ) retData = application[cacheVarName]; else retData = setMemCacheDefaults(key=""); } } else retData = setMemCacheDefaults(key=""); } return retData; arguments.filter = LEN(TRIM(arguments.filter)) ? arguments.filter : ""; return lcase(arguments.filter); var retData = arguments.data; var dataType = getMemCacheDataType(); if ( !StructKeyExists(retData,"data") ) { if ( datatype EQ "array" ) retData.data = ArrayNew(1); else if ( datatype EQ "struct" ) retData.data = StructNew(); else if ( datatype EQ "string" ) retData.data = ''; else // Use datatype query as the default retData.data = QueryNew('tmp'); } if ( !StructKeyExists(retData,"key") ) retData.key = arguments.key; if ( !StructKeyExists(retData,"datetimestamp") ) retData.datetimestamp = Now(); return retData; var cacheVarName = getMemCacheVarName(); lock timeout="60" name="#cacheVarName#" type="exclusive" { if ( !StructKeyExists(application,cacheVarName) ) application[cacheVarName] = StructNew(); if ( LEN(TRIM(arguments.key)) ) application[cacheVarName][arguments.key] = arguments.cacheData; else application[cacheVarName] = arguments.cacheData; } var cacheVarName = getMemCacheVarName(); lock timeout="60" name="#cacheVarName#" type="exclusive" { if ( LEN(TRIM(arguments.key)) ) { if ( StructKeyExists(application,cacheVarName) AND StructKeyExists(application[cacheVarName],arguments.key) ) application[cacheVarName][arguments.key] = StructNew(); } else application[cacheVarName] = StructNew(); } // reset defaults setMemCacheDefaults(key=arguments.key);