From 8ec3d1ab52c633fbec232b62d021679b84730d18 Mon Sep 17 00:00:00 2001
From: Hank Shen <swh@admpub.com>
Date: Sun, 15 Oct 2023 11:47:40 +0800
Subject: update

---
 setter.go | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 setter.go

diff --git a/setter.go b/setter.go
new file mode 100644
index 0000000..cb56171
--- /dev/null
+++ b/setter.go
@@ -0,0 +1,54 @@
+package securecookie
+
+import (
+	"crypto/cipher"
+	"hash"
+)
+
+func SetMaxLength(codecs []Codec, l int) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.MaxLength(l)
+		}
+	}
+}
+
+func SetMaxAge(codecs []Codec, l int) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.MaxAge(l)
+		}
+	}
+}
+
+func SetMinAge(codecs []Codec, l int) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.MinAge(l)
+		}
+	}
+}
+
+func SetHashFunc(codecs []Codec, f func() hash.Hash) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.HashFunc(f)
+		}
+	}
+}
+
+func SetBlockFunc(codecs []Codec, f func([]byte) (cipher.Block, error)) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.BlockFunc(f)
+		}
+	}
+}
+
+func SetSerializer(codecs []Codec, sz Serializer) {
+	for _, c := range codecs {
+		if codec, ok := c.(*SecureCookie); ok {
+			codec.SetSerializer(sz)
+		}
+	}
+}
-- 
cgit v1.2.3