From db5d7914d82d69021cf303e0ab02b46e0730bf48 Mon Sep 17 00:00:00 2001 From: Christian Segundo Date: Thu, 15 Jun 2023 19:54:16 +0200 Subject: one step closer --- src/transmission.zig | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'src/transmission.zig') diff --git a/src/transmission.zig b/src/transmission.zig index e25d30b..dd058bb 100644 --- a/src/transmission.zig +++ b/src/transmission.zig @@ -2,10 +2,9 @@ const std = @import("std"); const util = @import("util.zig"); const Request = @import("request.zig").Request; -const SessionGetFields = @import("request.zig").SessionGetFields; const SessionGet = @import("request.zig").SessionGet; +const SessionSet = @import("request.zig").SessionSet; const TorrentGet = @import("request.zig").TorrentGet; -const TorrentGetFields = @import("request.zig").TorrentGetFields; pub const ClientOptions = extern struct { host: [*:0]const u8, @@ -83,6 +82,8 @@ pub const Client = struct { return error.InvalidSize; } + std.debug.print("request: {s}\n", .{payload.items}); + try real_req.finish(); try real_req.wait(); @@ -103,7 +104,7 @@ pub const Client = struct { pub fn session_get_raw(client: *Client, session_get: ?SessionGet) ![]u8 { const default: SessionGet = .{ - .fields = comptime util.enumFieldsToSlice(SessionGetFields), + .fields = SessionGet.all_fields, }; const r = Request{ @@ -116,7 +117,7 @@ pub fn session_get_raw(client: *Client, session_get: ?SessionGet) ![]u8 { pub fn torrent_get_raw(client: *Client, torrent_get: ?TorrentGet) ![]u8 { const default: TorrentGet = .{ - .fields = comptime util.enumFieldsToSlice(TorrentGetFields), + .fields = TorrentGet.all_fields, }; const r = Request{ @@ -126,3 +127,12 @@ pub fn torrent_get_raw(client: *Client, torrent_get: ?TorrentGet) ![]u8 { const body = try client.do(r); return body; } + +pub fn session_set_raw(client: *Client, session_set: SessionSet) ![]u8 { + const r = Request{ + .method = .session_set, + .arguments = .{ .session_set = session_set }, + }; + const body = try client.do(r); + return body; +} -- cgit v1.2.3