| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // this file was auto-generated by internal/cmd/gentypes/main.go: DO NOT EDIT
- package jwa
- import (
- "github.com/pkg/errors"
- )
- // ContentEncryptionAlgorithm represents the various encryption algorithms as described in https://tools.ietf.org/html/rfc7518#section-5
- type ContentEncryptionAlgorithm string
- // Supported values for ContentEncryptionAlgorithm
- const (
- A128CBC_HS256 ContentEncryptionAlgorithm = "A128CBC-HS256" // AES-CBC + HMAC-SHA256 (128)
- A128GCM ContentEncryptionAlgorithm = "A128GCM" // AES-GCM (128)
- A192CBC_HS384 ContentEncryptionAlgorithm = "A192CBC-HS384" // AES-CBC + HMAC-SHA384 (192)
- A192GCM ContentEncryptionAlgorithm = "A192GCM" // AES-GCM (192)
- A256CBC_HS512 ContentEncryptionAlgorithm = "A256CBC-HS512" // AES-CBC + HMAC-SHA512 (256)
- A256GCM ContentEncryptionAlgorithm = "A256GCM" // AES-GCM (256)
- )
- // Accept is used when conversion from values given by
- // outside sources (such as JSON payloads) is required
- func (v *ContentEncryptionAlgorithm) Accept(value interface{}) error {
- var tmp ContentEncryptionAlgorithm
- switch x := value.(type) {
- case string:
- tmp = ContentEncryptionAlgorithm(x)
- case ContentEncryptionAlgorithm:
- tmp = x
- default:
- return errors.Errorf(`invalid type for jwa.ContentEncryptionAlgorithm: %T`, value)
- }
- switch tmp {
- case A128CBC_HS256, A128GCM, A192CBC_HS384, A192GCM, A256CBC_HS512, A256GCM:
- default:
- return errors.Errorf(`invalid jwa.ContentEncryptionAlgorithm value`)
- }
- *v = tmp
- return nil
- }
- // String returns the string representation of a ContentEncryptionAlgorithm
- func (v ContentEncryptionAlgorithm) String() string {
- return string(v)
- }
|