Address remaining comments from #756

Rename Encoding to Codec, Versioning to ResourceVersioner.  Add
GoDoc.  Add Delete(key, recursive) to EtcdHelper
This commit is contained in:
Clayton Coleman
2014-08-05 22:23:22 -04:00
parent 91b31c5552
commit 67dbd15929
6 changed files with 88 additions and 71 deletions

View File

@@ -25,19 +25,23 @@ import (
"gopkg.in/v1/yaml"
)
type EncodingInterface interface {
// codec defines methods for serializing and deserializing API
// objects
type codec interface {
Encode(obj interface{}) (data []byte, err error)
Decode(data []byte) (interface{}, error)
DecodeInto(data []byte, obj interface{}) error
}
type VersioningInterface interface {
// resourceVersioner provides methods for setting and retrieving
// the resource version from an API object
type resourceVersioner interface {
SetResourceVersion(obj interface{}, version uint64) error
ResourceVersion(obj interface{}) (uint64, error)
}
var Encoding EncodingInterface
var Versioning VersioningInterface
var Codec codec
var ResourceVersioner resourceVersioner
var conversionScheme *conversion.Scheme
@@ -101,8 +105,8 @@ func init() {
},
)
Encoding = conversionScheme
Versioning = JSONBaseVersioning{}
Codec = conversionScheme
ResourceVersioner = NewJSONBaseResourceVersioner()
}
// AddKnownTypes registers the types of the arguments to the marshaller of the package api.