diff options
author | Karl Vollmer <karl.vollmer@dal.ca> | 2011-11-28 11:22:47 -0400 |
---|---|---|
committer | Karl Vollmer <karl.vollmer@dal.ca> | 2011-11-28 11:22:47 -0400 |
commit | 2c06cb5440e7075721872538e661850932eaa55b (patch) | |
tree | 74e7ed06a126c0c9cb0c08af09f5256861b37844 /lib/class/catalog.class.php | |
parent | e862098f66d7959663715b7b7002cf087f0fe3cd (diff) | |
download | ampache-2c06cb5440e7075721872538e661850932eaa55b.tar.gz ampache-2c06cb5440e7075721872538e661850932eaa55b.tar.bz2 ampache-2c06cb5440e7075721872538e661850932eaa55b.zip |
Switched API to exceptions rather then trigger_error in most instances, more work on the
remote catalog indexing.
Diffstat (limited to 'lib/class/catalog.class.php')
-rw-r--r-- | lib/class/catalog.class.php | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/lib/class/catalog.class.php b/lib/class/catalog.class.php index 84471c33..de13c910 100644 --- a/lib/class/catalog.class.php +++ b/lib/class/catalog.class.php @@ -1290,11 +1290,19 @@ class Catalog extends database_object { */ public function get_remote_catalog($type=0) { - $remote_handle = new AmpacheApi(array('username'=>'','password'=>'','server'=>'')); + try { + $remote_handle = new AmpacheApi(array('username'=>$this->remote_username,'password'=>$this->remote_password,'server'=>$this->path,'debug'=>true)); + } catch (Exception $e) { + Error::add('general',$e->getMessage()); + Error::display('general'); + flush(); + return false; + } - if ($remote_handle->state() != 'READY') { + if ($remote_handle->state() != 'CONNECTED') { debug_event('APICLIENT','Error Unable to make API client ready','1'); Error::add('general',_('Error Connecting to Remote Server')); + Error::display('general'); return false; } @@ -1302,7 +1310,7 @@ class Catalog extends database_object { $remote_catalog_info = $remote_handle->info(); // Tell em what we've found johnny! - printf(_('%u remote catalogs found (%u songs)'),$remote_catalog_info['catalogs'],$remote_catalog_info['songs']); + printf(_('%u remote catalog(s) found (%u songs)'),$remote_catalog_info['catalogs'],$remote_catalog_info['songs']); flush(); // Hardcoded for now @@ -1313,9 +1321,16 @@ class Catalog extends database_object { while ($total > $current) { $start = $current; $current += $step; - $remote_handle->parse_response($remote_handle->send_command('songs',array('offset'=>$start,'limit'=>$step))); - $songs = $remote_handle->get_response(); - } + // It uses exceptions so lets try this + try { + $remote_handle->parse_response($remote_handle->send_command('songs',array('offset'=>$start,'limit'=>$step))); + $songs = $remote_handle->get_response(); + } catch (Exception $e) { + Error::add('general',$e->getMessage()); + Error::display('general'); + flush(); + } + } // end while echo "<p>" . _('Completed updating remote catalog(s)') . ".</p><hr />\n"; flush(); |