getHandlerPath(); $handlerClass = $webserviceObject->getHandlerClass(); require_once $handlerPath; // Cache the instance for re-use if(!isset($vtws_query_cache[$moduleName]['handler'])) { $handler = new $handlerClass($webserviceObject,$user,$adb,$log); $vtws_query_cache[$moduleName]['handler'] = $handler; } else { $handler = $vtws_query_cache[$moduleName]['handler']; } // END // Cache the instance for re-use if(!isset($vtws_query_cache[$moduleName]['meta'])) { $meta = $handler->getMeta(); $vtws_query_cache[$moduleName]['meta'] = $meta; } else { $meta = $vtws_query_cache[$moduleName]['meta']; } // END $types = vtws_listtypes(null, $user); if(!in_array($webserviceObject->getEntityName(),$types['types'])){ throw new WebServiceException(WebServiceErrorCode::$ACCESSDENIED,"Permission to perform the operation is denied"); } if(!$meta->hasReadAccess()){ throw new WebServiceException(WebServiceErrorCode::$ACCESSDENIED,"Permission to read is denied"); } $result = $handler->query($q); VTWS_PreserveGlobal::flush(); return $result; } ?>