summaryrefslogtreecommitdiff
path: root/unsafecodec.go
diff options
context:
space:
mode:
Diffstat (limited to 'unsafecodec.go')
-rw-r--r--unsafecodec.go56
1 files changed, 0 insertions, 56 deletions
diff --git a/unsafecodec.go b/unsafecodec.go
deleted file mode 100644
index 6853658..0000000
--- a/unsafecodec.go
+++ /dev/null
@@ -1,56 +0,0 @@
-package securecookie
-
-import "fmt"
-
-var _ Codec = (*UnsafeCodec)(nil)
-
-func NewUnsafeCodec() *UnsafeCodec {
- s := &UnsafeCodec{
- sz: GobEncoder{},
- }
- return s
-}
-
-// UnsafeCodec encodes and decodes
-type UnsafeCodec struct {
- err error
- sz Serializer
-}
-
-// Encoding sets the encoding/serialization method for cookies.
-//
-// Default is encoding/gob. To encode special structures using encoding/gob,
-// they must be registered first using gob.Register().
-func (s *UnsafeCodec) SetSerializer(sz Serializer) *UnsafeCodec {
- s.sz = sz
-
- return s
-}
-
-// Encode encodes a value.
-func (s *UnsafeCodec) Encode(name string, value interface{}) (string, error) {
- if s.err != nil {
- return "", s.err
- }
- var err error
- var b []byte
- // Serialize.
- if b, err = s.sz.Serialize(value); err != nil {
- return "", cookieError{cause: fmt.Errorf(`%w: %s`, err, name), typ: usageError}
- }
- // Done.
- return string(b), nil
-}
-
-// Decode decodes a value. The dst argument must be a pointer.
-func (s *UnsafeCodec) Decode(name, value string, dst interface{}, _ ...int) error {
- if s.err != nil {
- return s.err
- }
- // Deserialize.
- if err := s.sz.Deserialize([]byte(value), dst); err != nil {
- return cookieError{cause: fmt.Errorf(`%w: %s`, err, name), typ: decodeError}
- }
- // Done.
- return nil
-}