From b29a82c0f5ec8eb82adfbff5b142ea47d33a9b90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Bru=CC=88ckner?= Date: Sun, 18 Feb 2024 01:05:56 -0800 Subject: [PATCH] Add Close method --- README.md | 1 + rcon.go | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/README.md b/README.md index 7f68ddd..e869000 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ import ( func main() { client := palworldrcon.NewClient("127.0.0.1:25575", "password") + defer client.Close() info, err := client.Info() if err != nil { diff --git a/rcon.go b/rcon.go index 01b7e70..39556d5 100644 --- a/rcon.go +++ b/rcon.go @@ -31,6 +31,17 @@ func NewClient(address string, password string) *Client { return client } +// Close closes the connection to the RCON server. Calling any other method after closing will reopen the connection. +func (r *Client) Close() error { + if r.conn == nil { + return nil + } else { + err := r.conn.Close() + r.conn = nil + return err + } +} + func (r *Client) connect() error { if r.conn != nil { r.conn.Close()