reduce code duplication for error handling

This commit is contained in:
Robin Appelman 2016-08-26 23:18:04 +02:00
commit 471824d423
3 changed files with 12 additions and 11 deletions

View file

@ -7,4 +7,13 @@
namespace Icewind\SMB\Exception; namespace Icewind\SMB\Exception;
class Exception extends \Exception {} class Exception extends \Exception {
static public function unknown($path, $error) {
$message = 'Unknown error (' . $error . ')';
if ($path) {
$message .= ' for ' . $path;
}
return new Exception($message, $error);
}
}

View file

@ -59,11 +59,7 @@ class NativeState {
case 113: case 113:
throw new NoRouteToHostException($path, $error); throw new NoRouteToHostException($path, $error);
default: default:
$message = 'Unknown error (' . $error . ')'; throw Exception::unknown($path, $error);
if ($path) {
$message .= ' for ' . $path;
}
throw new Exception($message, $error);
} }
} }

View file

@ -67,11 +67,7 @@ class Parser {
case ErrorCodes::SharingViolation: case ErrorCodes::SharingViolation:
throw new FileInUseException($path); throw new FileInUseException($path);
default: default:
$message = 'Unknown error (' . $error . ')'; throw Exception::unknown($path, $error);
if ($path) {
$message .= ' for ' . $path;
}
throw new Exception($message);
} }
} }
} }