mirror of
https://github.com/zigzap/zap.git
synced 2025-10-20 23:24:09 +00:00
don't pollute global namespace with fio
This commit is contained in:
parent
1e1b5f5c51
commit
295c2f68dd
6 changed files with 82 additions and 77 deletions
|
@ -73,7 +73,7 @@ const Handler = struct {
|
|||
defer s.deinit();
|
||||
std.log.info("?terminate={s}\n", .{s.str});
|
||||
if (std.mem.eql(u8, s.str, "true")) {
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
}
|
||||
} else |err| {
|
||||
|
|
|
@ -86,7 +86,7 @@ pub fn main() !void {
|
|||
if (maybe_str) |*s| {
|
||||
defer s.deinit();
|
||||
if (std.mem.eql(u8, s.str, "true")) {
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
}
|
||||
} else |err| {
|
||||
|
|
|
@ -111,7 +111,7 @@ fn endpoint_http_get(e: *Endpoints.Endpoint, r: zap.Request) void {
|
|||
r.sendBody(HTTP_RESPONSE) catch return;
|
||||
received_response = HTTP_RESPONSE;
|
||||
std.time.sleep(1 * std.time.ns_per_s);
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
|
||||
fn endpoint_http_unauthorized(e: *Endpoints.Endpoint, r: zap.Request) void {
|
||||
|
@ -120,7 +120,7 @@ fn endpoint_http_unauthorized(e: *Endpoints.Endpoint, r: zap.Request) void {
|
|||
r.sendBody("UNAUTHORIZED ACCESS") catch return;
|
||||
received_response = "UNAUTHORIZED";
|
||||
std.time.sleep(1 * std.time.ns_per_s);
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -165,7 +165,7 @@ fn makeRequest(a: std.mem.Allocator, url: []const u8, auth: ?ClientAuthReqHeader
|
|||
std.debug.print("RESPONSE:\n{s}\n", .{buffer[0..len]});
|
||||
}
|
||||
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
|
||||
fn makeRequestThread(a: std.mem.Allocator, url: []const u8, auth: ?ClientAuthReqHeaderFields) !std.Thread {
|
||||
|
|
|
@ -15,7 +15,7 @@ fn makeRequest(a: std.mem.Allocator, url: []const u8) !void {
|
|||
|
||||
try req.start();
|
||||
try req.wait();
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
|
||||
fn makeRequestThread(a: std.mem.Allocator, url: []const u8) !std.Thread {
|
||||
|
|
|
@ -22,7 +22,7 @@ fn makeRequest(a: std.mem.Allocator, url: []const u8) !void {
|
|||
try req.wait();
|
||||
read_len = try req.readAll(&buffer);
|
||||
|
||||
zap.fio_stop();
|
||||
zap.stop();
|
||||
}
|
||||
|
||||
fn makeRequestThread(a: std.mem.Allocator, url: []const u8) !std.Thread {
|
||||
|
|
31
src/zap.zig
31
src/zap.zig
|
@ -2,12 +2,14 @@
|
|||
// or maybe let's just make it zap directly...
|
||||
|
||||
const std = @import("std");
|
||||
const fio = @import("fio.zig");
|
||||
|
||||
/// The facilio C API. No need to use this.
|
||||
pub const fio = @import("fio.zig");
|
||||
|
||||
/// Server-Side TLS function wrapper
|
||||
pub const Tls = @import("tls.zig");
|
||||
|
||||
pub usingnamespace @import("fio.zig");
|
||||
// pub usingnamespace @import("fio.zig");
|
||||
pub usingnamespace @import("endpoint.zig");
|
||||
pub usingnamespace @import("util.zig");
|
||||
pub usingnamespace @import("http.zig");
|
||||
|
@ -975,9 +977,11 @@ pub const HttpListener = struct {
|
|||
}
|
||||
};
|
||||
|
||||
/// lower level listening, if you don't want to use a listener but rather use
|
||||
/// the listen() function.
|
||||
pub const ListenSettings = struct {
|
||||
/// Low-level API
|
||||
pub const LowLevel = struct {
|
||||
/// lower level listening, if you don't want to use a listener but rather use
|
||||
/// the listen() function.
|
||||
pub const ListenSettings = struct {
|
||||
on_request: ?FioHttpRequestFn = null,
|
||||
on_upgrade: ?FioHttpRequestFn = null,
|
||||
on_response: ?FioHttpRequestFn = null,
|
||||
|
@ -995,10 +999,10 @@ pub const ListenSettings = struct {
|
|||
pub fn init() Self {
|
||||
return .{};
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
/// Low level listen function
|
||||
pub fn listen(port: [*c]const u8, interface: [*c]const u8, settings: ListenSettings) ListenError!void {
|
||||
/// Low level listen function
|
||||
pub fn listen(port: [*c]const u8, interface: [*c]const u8, settings: ListenSettings) ListenError!void {
|
||||
var pfolder: [*c]const u8 = null;
|
||||
var pfolder_len: usize = 0;
|
||||
|
||||
|
@ -1006,7 +1010,7 @@ pub fn listen(port: [*c]const u8, interface: [*c]const u8, settings: ListenSetti
|
|||
pfolder_len = pf.len;
|
||||
pfolder = pf.ptr;
|
||||
}
|
||||
var x: fio.http_settings_s = .{
|
||||
const x: fio.http_settings_s = .{
|
||||
.on_request = settings.on_request,
|
||||
.on_upgrade = settings.on_upgrade,
|
||||
.on_response = settings.on_response,
|
||||
|
@ -1036,14 +1040,15 @@ pub fn listen(port: [*c]const u8, interface: [*c]const u8, settings: ListenSetti
|
|||
if (fio.http_listen(port, interface, x) == -1) {
|
||||
return error.ListenError;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// lower level sendBody
|
||||
pub fn sendBody(request: [*c]fio.http_s, body: []const u8) HttpError!void {
|
||||
/// lower level sendBody
|
||||
pub fn sendBody(request: [*c]fio.http_s, body: []const u8) HttpError!void {
|
||||
const ret = fio.http_send_body(request, @as(
|
||||
*anyopaque,
|
||||
@ptrFromInt(@intFromPtr(body.ptr)),
|
||||
), body.len);
|
||||
debug("sendBody(): ret = {}\n", .{ret});
|
||||
if (ret != -1) return error.HttpSendBody;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue