/** * Creates a Piece_ORM_Metadata object from a cache or a database. * * @param string $tableName * @param string $tableID * @return Piece_ORM_Metadata */ function &_createMetadata($tableName, $tableID) { if (!file_exists($GLOBALS['PIECE_ORM_Metadata_CacheDirectory'])) { trigger_error("The cache directory [ {$GLOBALS['PIECE_ORM_Metadata_CacheDirectory']} ] is not found.", E_USER_WARNING); return Piece_ORM_Metadata_Factory::_createMetadataFromDatabase($tableName); } if (!is_readable($GLOBALS['PIECE_ORM_Metadata_CacheDirectory']) || !is_writable($GLOBALS['PIECE_ORM_Metadata_CacheDirectory'])) { trigger_error("The cache directory [ {$GLOBALS['PIECE_ORM_Metadata_CacheDirectory']} ] is not readable or writable.", E_USER_WARNING); return Piece_ORM_Metadata_Factory::_createMetadataFromDatabase($tableName); } return Piece_ORM_Metadata_Factory::_getMetadata($tableName, $tableID); }