This commit is contained in:
aozhiwei 2022-12-26 18:23:08 +08:00
parent 558c4343d3
commit b64621b7b5
4 changed files with 64 additions and 44 deletions

31
f8/jsonhttprequest.cc Normal file
View File

@ -0,0 +1,31 @@
#include <string.h>
#include <a8/a8.h>
#include <a8/mutable_xobject.h>
#include <f8/f8.h>
#include <f8/jsonhttprequest.h>
namespace f8
{
JsonHttpRequest::JsonHttpRequest()
{
resp_xobj = a8::MutableXObject::NewObject();
}
JsonHttpRequest::~JsonHttpRequest()
{
delete resp_xobj;
if (context && free_context) {
free_context(context);
}
}
std::string JsonHttpRequest::Response()
{
std::string response;
resp_xobj->ToJsonStr(response);
return a8::HttpResponse(response);
}
}

31
f8/jsonhttprequest.h Normal file
View File

@ -0,0 +1,31 @@
#pragma once
namespace a8
{
class MutableXObject;
}
namespace f8
{
struct JsonHttpRequest
{
bool pending = false;
unsigned long saddr = 0;
int socket_handle = 0;
time_t create_time = 0;
time_t handle_time = 0;
std::string query_str;
a8::XObject request;
a8::MutableXObject* resp_xobj = nullptr;
int async_pending_count = 0;
void* context = nullptr;
void (*free_context)(void*) = nullptr;
JsonHttpRequest();
~JsonHttpRequest();
std::string Response();
};
}

View File

@ -7,24 +7,5 @@
namespace f8
{
JsonHttpRequest::JsonHttpRequest()
{
resp_xobj = a8::MutableXObject::NewObject();
}
JsonHttpRequest::~JsonHttpRequest()
{
delete resp_xobj;
if (context && free_context) {
free_context(context);
}
}
std::string JsonHttpRequest::Response()
{
std::string response;
resp_xobj->ToJsonStr(response);
return a8::HttpResponse(response);
}
}

View File

@ -1,31 +1,10 @@
#pragma once
namespace a8
{
class MutableXObject;
}
namespace f8
{
struct JsonHttpRequest
{
bool pending = false;
unsigned long saddr = 0;
int socket_handle = 0;
time_t create_time = 0;
time_t handle_time = 0;
std::string query_str;
a8::XObject request;
a8::MutableXObject* resp_xobj = nullptr;
int async_pending_count = 0;
void* context = nullptr;
void (*free_context)(void*) = nullptr;
JsonHttpRequest();
~JsonHttpRequest();
std::string Response();
};
struct MsgHdr;
struct JsonHttpRequest;
enum SysInnerMesssage_e
{
@ -35,6 +14,4 @@ namespace f8
IM_SysEnd = 99,
};
struct MsgHdr;
}