* Copyright (C) 2010, StatusNet, Inc.
*
* Importer class for Delicious.com bookmarks
- *
+ *
* PHP version 5
*
* This program is free software: you can redistribute it and/or modify
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/
*/
-
class DeliciousBookmarkImporter extends QueueHandler
{
/**
*
* @return string 'dlcsbkmk'
*/
-
function transport()
{
return 'dlcsbkmk';
/**
* Handle the data
- *
+ *
* @param array $data associative array of user & bookmark info from DeliciousBackupImporter::importBookmark()
*
* @return boolean success value
*/
-
function handle($data)
{
- $profile = Profile::staticGet('id', $data['profile_id']);
+ $profile = Profile::getKV('id', $data['profile_id']);
try {
$saved = Bookmark::saveNew($profile,
$data['description'],
array('created' => $data['created'],
'distribute' => false));
- } catch (ClientException $e) {
+ } catch (ClientException $ce) {
// Most likely a duplicate -- continue on with the rest!
- common_log(LOG_ERR, "Error importing delicious bookmark to $data[url]: " . $e->getMessage());
+ common_log(LOG_ERR, "Error importing delicious bookmark to $data[url]: " . $ce->getMessage());
return true;
+ } catch (Exception $ex) {
+ if (preg_match("/DB Error: already exists/", $ex->getMessage())) {
+ common_log(LOG_ERR, "Error importing delicious bookmark to $data[url]: " . $ce->getMessage());
+ return true;
+ } else {
+ throw $ex;
+ }
}
return true;