From: wb at pro-net dot co dot uk Operating system: FreeBSD 5.2.1 PHP version: 5.0.3 PHP Bug Type: Feature/Change Request Bug description: SoapServer onServerRequest() 'event'
Description: ------------ I would like to be able to intercept the SoapServer when it is about to call an assigned function/method to handle a request. This would allow people to check methods before they are run and could then, for example, check that that the request service is currently enabled/active and if not throw a SoapFault which would then be sent as the soap responce for that method. If no SoapFault was thrown then it would carry and run the request as normal. An example follows. Reproduce code: --------------- <?php class NewSoapServer extends SoapServer { /** * @desc Overload SoapServer onServerRequest method * @return void * * Check to make sure that the requested service is * not disabled. If the service is disabled then a * SoapFaule will be thrown. */ function onServerRequest ($name, $args) { if(Application::isServiceDisabled($name)){ throw new SoapFault("Server","The '".$name."' service is currently disabled."); } } } ?> -- Edit bug report at http://bugs.php.net/?id=32353&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=32353&r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=32353&r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=32353&r=trysnapshot51 Fixed in CVS: http://bugs.php.net/fix.php?id=32353&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=32353&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=32353&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=32353&r=needscript Try newer version: http://bugs.php.net/fix.php?id=32353&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=32353&r=support Expected behavior: http://bugs.php.net/fix.php?id=32353&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=32353&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=32353&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=32353&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=32353&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=32353&r=dst IIS Stability: http://bugs.php.net/fix.php?id=32353&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=32353&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=32353&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=32353&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=32353&r=mysqlcfg