bool SoundBuffer::get(SoundGeneratorOutput& output, float* buf, int samples) { if (!enabled()) return false; return handleGet(output, BufferFormat::Local.buf(buf), samples); }
void WsAccount::answerReceived(const std::string & answer, int requestId) { RecursiveMutex::ScopedLock lock(_mutex); if (!answer.empty()) { bool fromServer = false; bool isValid = false; IMAccountList imAccountList; fromXml( imAccountList, answer ); switch( _queryResult.getEnumMethod() ) { case QueryResult::EnumMethod_SaveUserNetwork: handleSet( imAccountList ); break; case QueryResult::EnumMethod_GetUserNetwork: handleGet( imAccountList ); break; case QueryResult::EnumMethod_RemoveUserNetwork: handleRemove(); break; default: LOG_WARN( "Unexpected method" ); assert(false); } } }
void HttpMessageHandler::handle(struct ns_connection *nc, struct http_message *hm) { std::string requestMethod = getMethod(hm); if (requestMethod.compare("GET") == 0) { handleGet(nc, hm); }else if (requestMethod.compare("OPTIONS") == 0) { sendOptions(nc); } }
OCEntityHandlerResult AbstractResource::resourceEntityHandler(shared_ptr<OCResourceRequest> Request) { //Set Default result OCEntityHandlerResult result = OC_EH_ERROR; //Check if it is a request if (Request) { //Get reqeuest information string requestType = Request->getRequestType(); int requestFlag = Request->getRequestHandlerFlag(); if (requestFlag & RequestHandlerFlag::RequestFlag) { //create response auto Response = std::make_shared<OC::OCResourceResponse>(); Response->setRequestHandle(Request->getRequestHandle()); Response->setResourceHandle(Request->getResourceHandle()); //Handle get if (requestType == "GET") { handleGet(Response); if (OCPlatform::sendResponse(Response) == OC_STACK_OK) { result = OC_EH_OK; } } else { Response->setResponseResult(OC_EH_ERROR); OCPlatform::sendResponse(Response); cerr << "Unsupported request type" << endl; return result; } } /*if (requestFlag & RequestHandlerFlag::ObserverFlag) { ObservationInfo observationInfo = Request->getObservationInfo(); if (ObserveAction::ObserveRegister == observationInfo.action) { cout << "Starting observer for temperature sensor" << endl; m_temperatureObservers.push_back(observationInfo.obsId); m_temperatureObserverLoop->start(); } else if (ObserveAction::ObserveUnregister == observationInfo.action) { m_temperatureObservers.erase( remove(m_temperatureObservers.begin(), m_temperatureObservers.end(), observationInfo.obsId), m_temperatureObservers.end()); } }*/ } return result; }
void HttpServer::handlePost(HttpClientHandler* hdlr,const QHttpRequestHeader & hdr,const QByteArray & data) { // this is either a file or a login if (hdr.value("Content-Type").startsWith("multipart/form-data")) { handleTorrentPost(hdlr,hdr,data); } else if (!checkLogin(hdr,data)) { QHttpRequestHeader tmp = hdr; tmp.setRequest("GET","/login.html",1,1); handleGet(hdlr,tmp); } else { handleGet(hdlr,hdr,true); } }
void HttpServer::handleTorrentPost(HttpClientHandler* hdlr,const QHttpRequestHeader & hdr,const QByteArray & data) { const char* ptr = data.data(); Uint32 len = data.size(); int pos = QString(data).find("\r\n\r\n"); if (!session.logged_in || !checkSession(hdr)) { // You can't post torrents if you are not logged in // or the session is not OK redirectToLoginPage(hdlr); return; } if (pos == -1 || pos + 4 >= len || ptr[pos + 4] != 'd') { HttpResponseHeader rhdr(500); setDefaultResponseHeaders(rhdr,"text/html",false); hdlr->send500(rhdr); return; } // save torrent to a temporary file KTempFile tmp_file(locateLocal("tmp", "ktwebgui-"), ".torrent"); QDataStream* out = tmp_file.dataStream(); if (!out) { HttpResponseHeader rhdr(500); setDefaultResponseHeaders(rhdr,"text/html",false); hdlr->send500(rhdr); return; } out->writeRawBytes(ptr + (pos + 4),len - (pos + 4)); tmp_file.sync(); tmp_file.setAutoDelete(true); Out(SYS_WEB|LOG_NOTICE) << "Loading file " << tmp_file.name() << endl; core->loadSilently(KURL::fromPathOrURL(tmp_file.name())); handleGet(hdlr,hdr); }
void MainServlet::handlePost(HttpRequest* request, HttpResponse* response) { handleGet(request, response); }