decode static method

AcpDecoded<ResourceLink> decode(
  1. Object? json
)

Decodes this model and reports recoverable issues.

Implementation

static AcpDecoded<ResourceLink> decode(Object? json) {
  final decoder = AcpResilientDecoder(decodeAcpObject(json));
  final value = ResourceLink(
    name: decoder.required('name', (value) => decodeAcpString(value)),
    uri: decoder.required('uri', (value) => decodeAcpUri(value)),
    title: decoder
        .optionalOnError('title', (value) => decodeAcpString(value))
        .valueOrNull,
    description: decoder
        .optionalOnError('description', (value) => decodeAcpString(value))
        .valueOrNull,
    icons: decoder.listSkippingInvalid(
      'icons',
      (value) => iconCodec.decode(value),
      isRequired: false,
    ),
    mimeType: decoder
        .optionalOnError('mimeType', (value) => mediaTypeCodec.decode(value))
        .valueOrNull,
    size: decoder
        .optionalOnError('size', (value) => decodeAcpInt64(value))
        .valueOrNull,
    annotations: decoder
        .optionalOnError(
          'annotations',
          (value) => annotationsCodec.decode(value),
        )
        .valueOrNull,
    meta: decoder.meta(),
  );
  return decoder.finish(value);
}