Add base implementation for media-source
This commit is contained in:
parent
95e159f96c
commit
e2598db13b
53
attribute.go
53
attribute.go
|
@ -303,9 +303,62 @@ func (e *AttributeEncoder) Encode(attribute string, value interface{}) error {
|
|||
}
|
||||
}
|
||||
default:
|
||||
if tag != TagBeginCollection {
|
||||
return fmt.Errorf("type %T is not supported", value)
|
||||
}
|
||||
|
||||
if err := e.encodeTag(TagBeginCollection); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.encodeString(attribute); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.writeNullByte(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for member, value := range value.(map[string]interface{}) {
|
||||
fmt.Println(member, value)
|
||||
if err := e.encodeTag(TagMemberName); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.writeNullByte(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.encodeString(member); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.encodeTag(TagKeyword); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.writeNullByte(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.encodeString(value.(string)); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if err := e.encodeTag(TagEndCollection); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.writeNullByte(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.writeNullByte(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -352,7 +352,8 @@ const (
|
|||
AttributeJobKilobyteOctets = "job-k-octets"
|
||||
AttributeNumberOfDocuments = "number-of-documents"
|
||||
AttributeJobOriginatingUserName = "job-originating-user-name"
|
||||
AttributeOutputOrder = "outputorder"
|
||||
AttributeOutputOrder = "outputorder",
|
||||
AttributeMediaCol = "media-col",
|
||||
)
|
||||
|
||||
// Default attributes
|
||||
|
@ -416,5 +417,6 @@ var (
|
|||
AttributeStatusMessage: TagText,
|
||||
AttributeLimit: TagInteger,
|
||||
AttributeOutputOrder: TagName,
|
||||
AttributeMediaCol: TagBeginCollection,
|
||||
}
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue