void QgsHttpRequestHandler::sendResponse() { QgsMessageLog::logMessage( QString( "Sending HTTP response" ) ); if ( ! responseReady() ) { QgsMessageLog::logMessage( QString( "Trying to send out an invalid response" ) ); return; } #ifdef HAVE_SERVER_PYTHON_PLUGINS // Plugin hook // Iterate filters and call their sendResponse() method QgsServerFiltersMap::const_iterator filtersIterator; for ( filtersIterator = mPluginFilters.constBegin(); filtersIterator != mPluginFilters.constEnd(); ++filtersIterator ) { filtersIterator.value()->sendResponse(); } #endif if ( ! headersSent() ) { sendHeaders(); } sendBody(); //Clear the body to allow for streaming content to stdout clearBody(); }
Variant HHVM_FUNCTION(header_register_callback, const Variant& callback) { if (!is_callable(callback)) { raise_warning("First argument is expected to be a valid callback"); return init_null(); } auto transport = g_context->getTransport(); if (!transport) { // fail if there is no transport return false; } if (transport->headersSent()) { // fail if headers have already been sent return false; } return g_context->setHeaderCallback(callback); }