in service/elastictranscoder/deserializers.go [4362:4576]
func awsRestjson1_deserializeDocumentJobOutput(v **types.JobOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
if value == nil {
return nil
}
shape, ok := value.(map[string]interface{})
if !ok {
return fmt.Errorf("unexpected JSON type %v", value)
}
var sv *types.JobOutput
if *v == nil {
sv = &types.JobOutput{}
} else {
sv = *v
}
for key, value := range shape {
switch key {
case "AlbumArt":
if err := awsRestjson1_deserializeDocumentJobAlbumArt(&sv.AlbumArt, value); err != nil {
return err
}
case "AppliedColorSpaceConversion":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected String to be of type string, got %T instead", value)
}
sv.AppliedColorSpaceConversion = ptr.String(jtv)
}
case "Captions":
if err := awsRestjson1_deserializeDocumentCaptions(&sv.Captions, value); err != nil {
return err
}
case "Composition":
if err := awsRestjson1_deserializeDocumentComposition(&sv.Composition, value); err != nil {
return err
}
case "Duration":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
return fmt.Errorf("expected NullableLong to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
sv.Duration = ptr.Int64(i64)
}
case "DurationMillis":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
return fmt.Errorf("expected NullableLong to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
sv.DurationMillis = ptr.Int64(i64)
}
case "Encryption":
if err := awsRestjson1_deserializeDocumentEncryption(&sv.Encryption, value); err != nil {
return err
}
case "FileSize":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
return fmt.Errorf("expected NullableLong to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
sv.FileSize = ptr.Int64(i64)
}
case "FrameRate":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected FloatString to be of type string, got %T instead", value)
}
sv.FrameRate = ptr.String(jtv)
}
case "Height":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
return fmt.Errorf("expected NullableInteger to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
sv.Height = ptr.Int32(int32(i64))
}
case "Id":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected String to be of type string, got %T instead", value)
}
sv.Id = ptr.String(jtv)
}
case "Key":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected Key to be of type string, got %T instead", value)
}
sv.Key = ptr.String(jtv)
}
case "PresetId":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected Id to be of type string, got %T instead", value)
}
sv.PresetId = ptr.String(jtv)
}
case "Rotate":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected Rotate to be of type string, got %T instead", value)
}
sv.Rotate = ptr.String(jtv)
}
case "SegmentDuration":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected FloatString to be of type string, got %T instead", value)
}
sv.SegmentDuration = ptr.String(jtv)
}
case "Status":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected JobStatus to be of type string, got %T instead", value)
}
sv.Status = ptr.String(jtv)
}
case "StatusDetail":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected Description to be of type string, got %T instead", value)
}
sv.StatusDetail = ptr.String(jtv)
}
case "ThumbnailEncryption":
if err := awsRestjson1_deserializeDocumentEncryption(&sv.ThumbnailEncryption, value); err != nil {
return err
}
case "ThumbnailPattern":
if value != nil {
jtv, ok := value.(string)
if !ok {
return fmt.Errorf("expected ThumbnailPattern to be of type string, got %T instead", value)
}
sv.ThumbnailPattern = ptr.String(jtv)
}
case "Watermarks":
if err := awsRestjson1_deserializeDocumentJobWatermarks(&sv.Watermarks, value); err != nil {
return err
}
case "Width":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
return fmt.Errorf("expected NullableInteger to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
sv.Width = ptr.Int32(int32(i64))
}
default:
_, _ = key, value
}
}
*v = sv
return nil
}