Merge branch 'feature/media-col' of https://github.com/Nico0302/go-ipp
This commit is contained in:
commit
bbe65c4660
49
attribute.go
49
attribute.go
|
@ -303,7 +303,54 @@ func (e *AttributeEncoder) Encode(attribute string, value interface{}) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return fmt.Errorf("type %T is not supported", value)
|
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{}) {
|
||||||
|
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
|
return nil
|
||||||
|
|
|
@ -353,6 +353,7 @@ const (
|
||||||
AttributeNumberOfDocuments = "number-of-documents"
|
AttributeNumberOfDocuments = "number-of-documents"
|
||||||
AttributeJobOriginatingUserName = "job-originating-user-name"
|
AttributeJobOriginatingUserName = "job-originating-user-name"
|
||||||
AttributeOutputOrder = "outputorder"
|
AttributeOutputOrder = "outputorder"
|
||||||
|
AttributeMediaCol = "media-col"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Default attributes
|
// Default attributes
|
||||||
|
@ -416,5 +417,6 @@ var (
|
||||||
AttributeStatusMessage: TagText,
|
AttributeStatusMessage: TagText,
|
||||||
AttributeLimit: TagInteger,
|
AttributeLimit: TagInteger,
|
||||||
AttributeOutputOrder: TagName,
|
AttributeOutputOrder: TagName,
|
||||||
|
AttributeMediaCol: TagBeginCollection,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue