fix: Propagate bucket policy update in a distributed setup (#6135)

Commit 0d52126023 caused a regression in setting
a new bucket policy in a distributed setup. The reason is that gob is not able
to encode fields declared as interfaces unless we provide GobEncode() and GobDecode()
This PR adds them by using json marshaller and unmarshaller that are already
implemented for Functions interface.
master
Anis Elleuch 7 years ago committed by kannappanr
parent c310cbbe89
commit 4ddc222f46
  1. 10
      pkg/policy/condition/func.go

@ -162,6 +162,16 @@ func (functions *Functions) UnmarshalJSON(data []byte) error {
return nil return nil
} }
// GobEncode - encodes Functions to gob data.
func (functions Functions) GobEncode() ([]byte, error) {
return functions.MarshalJSON()
}
// GobDecode - decodes gob data to Functions.
func (functions *Functions) GobDecode(data []byte) error {
return functions.UnmarshalJSON(data)
}
// NewFunctions - returns new Functions with given function list. // NewFunctions - returns new Functions with given function list.
func NewFunctions(functions ...Function) Functions { func NewFunctions(functions ...Function) Functions {
return Functions(functions) return Functions(functions)

Loading…
Cancel
Save