 				return;
 			
 			// read from cache if present
-			if (loadCache(this))
+			if (loadCache())
 				return;
 			
 			// force retrieval of referenced columns

	import weave.api.registerLinkableChild;
	import weave.api.reportError;
	import weave.api.setSessionState;
	import weave.core.LinkableDynamicObject;
	import weave.core.LinkableFile;
	import weave.core.LinkableHashMap;

		public function WeaveAnalystDataSource()
		{
			promise.depend(url, scriptName, inputs, hierarchyRefresh);
			registerLinkableChild(this, outputCSV.keyType);
			registerLinkableChild(this, outputCSV.keyColName);
			if (!cacheFile)
			{
				// register static LinkableFile as a child of the globalHashMap so it will not be disposed when an instance of this data source is disposed.
				cacheFile = registerLinkableChild(WeaveAPI.globalHashMap, new LinkableFile(URLRequestUtils.LOCAL_FILE_URL_SCHEME + CACHE_FILE_NAME), parseCacheFile);
			}
			registerLinkableChild(this, cacheFile, runScript);
			getCallbackCollection(this).addGroupedCallback(this, saveCache);
		}
		
		private static const CACHE_STATE:String = 'sessionState';
