Browse Source

Do not use HTTP code OC_Response constants anymore

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
tags/v14.0.0beta1
Morris Jobke 5 years ago
parent
commit
b0a296e2e1
No account linked to committer's email address
5 changed files with 16 additions and 26 deletions
  1. 4
    4
      index.php
  2. 1
    1
      lib/base.php
  3. 0
    9
      lib/private/legacy/response.php
  4. 4
    5
      public.php
  5. 7
    7
      remote.php

+ 4
- 4
index.php View File

\OC::$server->getLogger()->logException($ex, array('app' => 'index')); \OC::$server->getLogger()->logException($ex, array('app' => 'index'));


//show the user a detailed error page //show the user a detailed error page
OC_Template::printExceptionErrorPage($ex, \OC_Response::STATUS_SERVICE_UNAVAILABLE);
OC_Template::printExceptionErrorPage($ex, 503);
} catch (\OC\HintException $ex) { } catch (\OC\HintException $ex) {
try { try {
OC_Template::printErrorPage($ex->getMessage(), $ex->getHint(), OC_Response::STATUS_SERVICE_UNAVAILABLE);
OC_Template::printErrorPage($ex->getMessage(), $ex->getHint(), 503);
} catch (Exception $ex2) { } catch (Exception $ex2) {
\OC::$server->getLogger()->logException($ex, array('app' => 'index')); \OC::$server->getLogger()->logException($ex, array('app' => 'index'));
\OC::$server->getLogger()->logException($ex2, array('app' => 'index')); \OC::$server->getLogger()->logException($ex2, array('app' => 'index'));
OC_Template::printExceptionErrorPage($ex, 500); OC_Template::printExceptionErrorPage($ex, 500);
} }
} catch (\OC\User\LoginException $ex) { } catch (\OC\User\LoginException $ex) {
OC_Template::printErrorPage($ex->getMessage(), $ex->getMessage(), OC_Response::STATUS_FORBIDDEN);
OC_Template::printErrorPage($ex->getMessage(), $ex->getMessage(), 403);
} catch (Exception $ex) { } catch (Exception $ex) {
\OC::$server->getLogger()->logException($ex, array('app' => 'index')); \OC::$server->getLogger()->logException($ex, array('app' => 'index'));




throw $e; throw $e;
} }
OC_Template::printExceptionErrorPage($ex, \OC_Response::STATUS_INTERNAL_SERVER_ERROR);
OC_Template::printExceptionErrorPage($ex, 500);
} }

+ 1
- 1
lib/base.php View File

} catch (Exception $e) { } catch (Exception $e) {
\OC::$server->getLogger()->logException($e, ['app' => 'base']); \OC::$server->getLogger()->logException($e, ['app' => 'base']);
//show the user a detailed error page //show the user a detailed error page
OC_Template::printExceptionErrorPage($e, \OC_Response::STATUS_INTERNAL_SERVER_ERROR);
OC_Template::printExceptionErrorPage($e, 500);
die(); die();
} }



+ 0
- 9
lib/private/legacy/response.php View File

*/ */


class OC_Response { class OC_Response {
const STATUS_FOUND = 302;
const STATUS_NOT_MODIFIED = 304;
const STATUS_TEMPORARY_REDIRECT = 307;
const STATUS_BAD_REQUEST = 400;
const STATUS_FORBIDDEN = 403;
const STATUS_NOT_FOUND = 404;
const STATUS_INTERNAL_SERVER_ERROR = 500;
const STATUS_SERVICE_UNAVAILABLE = 503;

/** /**
* Sets the content disposition header (with possible workarounds) * Sets the content disposition header (with possible workarounds)
* @param string $filename file name * @param string $filename file name

+ 4
- 5
public.php View File

if (\OCP\Util::needUpgrade()) { if (\OCP\Util::needUpgrade()) {
// since the behavior of apps or remotes are unpredictable during // since the behavior of apps or remotes are unpredictable during
// an upgrade, return a 503 directly // an upgrade, return a 503 directly
OC_Template::printErrorPage('Service unavailable', '', OC_Response::STATUS_SERVICE_UNAVAILABLE);
OC_Template::printErrorPage('Service unavailable', '', 503);
exit; exit;
} }


require_once OC_App::getAppPath($app) . '/' . $parts[1]; require_once OC_App::getAppPath($app) . '/' . $parts[1];


} catch (Exception $ex) { } catch (Exception $ex) {
$status = 500;
if ($ex instanceof \OC\ServiceUnavailableException) { if ($ex instanceof \OC\ServiceUnavailableException) {
$status = OC_Response::STATUS_SERVICE_UNAVAILABLE;
} else {
$status = OC_Response::STATUS_INTERNAL_SERVER_ERROR;
$status = 503;
} }
//show the user a detailed error page //show the user a detailed error page
\OC::$server->getLogger()->logException($ex, ['app' => 'public']); \OC::$server->getLogger()->logException($ex, ['app' => 'public']);
} catch (Error $ex) { } catch (Error $ex) {
//show the user a detailed error page //show the user a detailed error page
\OC::$server->getLogger()->logException($ex, ['app' => 'public']); \OC::$server->getLogger()->logException($ex, ['app' => 'public']);
OC_Template::printExceptionErrorPage($ex, OC_Response::STATUS_INTERNAL_SERVER_ERROR);
OC_Template::printExceptionErrorPage($ex, 500);
} }

+ 7
- 7
remote.php View File

$server->on('beforeMethod', function () use ($e) { $server->on('beforeMethod', function () use ($e) {
if ($e instanceof RemoteException) { if ($e instanceof RemoteException) {
switch ($e->getCode()) { switch ($e->getCode()) {
case OC_Response::STATUS_SERVICE_UNAVAILABLE:
case 503:
throw new ServiceUnavailable($e->getMessage()); throw new ServiceUnavailable($e->getMessage());
case OC_Response::STATUS_NOT_FOUND:
case 404:
throw new \Sabre\DAV\Exception\NotFound($e->getMessage()); throw new \Sabre\DAV\Exception\NotFound($e->getMessage());
} }
} }
}); });
$server->exec(); $server->exec();
} else { } else {
$statusCode = OC_Response::STATUS_INTERNAL_SERVER_ERROR;
$statusCode = 500;
if ($e instanceof \OC\ServiceUnavailableException ) { if ($e instanceof \OC\ServiceUnavailableException ) {
$statusCode = OC_Response::STATUS_SERVICE_UNAVAILABLE;
$statusCode = 503;
} }
if ($e instanceof RemoteException) { if ($e instanceof RemoteException) {
// we shall not log on RemoteException // we shall not log on RemoteException
if (\OCP\Util::needUpgrade()) { if (\OCP\Util::needUpgrade()) {
// since the behavior of apps or remotes are unpredictable during // since the behavior of apps or remotes are unpredictable during
// an upgrade, return a 503 directly // an upgrade, return a 503 directly
throw new RemoteException('Service unavailable', OC_Response::STATUS_SERVICE_UNAVAILABLE);
throw new RemoteException('Service unavailable', 503);
} }


$request = \OC::$server->getRequest(); $request = \OC::$server->getRequest();
$pathInfo = $request->getPathInfo(); $pathInfo = $request->getPathInfo();
if ($pathInfo === false || $pathInfo === '') { if ($pathInfo === false || $pathInfo === '') {
throw new RemoteException('Path not found', OC_Response::STATUS_NOT_FOUND);
throw new RemoteException('Path not found', 404);
} }
if (!$pos = strpos($pathInfo, '/', 1)) { if (!$pos = strpos($pathInfo, '/', 1)) {
$pos = strlen($pathInfo); $pos = strlen($pathInfo);
$file = resolveService($service); $file = resolveService($service);


if(is_null($file)) { if(is_null($file)) {
throw new RemoteException('Path not found', OC_Response::STATUS_NOT_FOUND);
throw new RemoteException('Path not found', 404);
} }


$file=ltrim($file, '/'); $file=ltrim($file, '/');

Loading…
Cancel
Save