Ejemplo n.º 1
0
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();
}
Ejemplo n.º 2
0
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);
}