CockpitResourceDescriptor.fromJson constructor
CockpitResourceDescriptor.fromJson(
- Object? value, {
- String path = r'$',
- CockpitDecodePolicy decodePolicy = CockpitDecodePolicy.requests,
Decodes a CockpitResourceDescriptor from a JSON object.
Implementation
factory CockpitResourceDescriptor.fromJson(
Object? value, {
String path = r'$',
CockpitDecodePolicy decodePolicy = CockpitDecodePolicy.requests,
}) {
final json = CockpitFoundationValueReader.object(value, path);
const fields = <String>{
'kind',
'scope',
'uriTemplate',
'mediaType',
'requiredFeatures',
};
CockpitFoundationValueReader.keys(
json,
fields,
path,
required: fields,
policy: decodePolicy,
);
return CockpitResourceDescriptor(
kind: CockpitFoundationValueReader.kind(json['kind'], '$path.kind'),
scope: CockpitEnumValue<CockpitOperationScope>.parse(
json['scope'],
CockpitOperationScope.values,
'$path.scope',
policy: CockpitDecodePolicy.requests,
).requireKnown(),
uriTemplate: CockpitFoundationValueReader.apiTemplate(
json['uriTemplate'],
'$path.uriTemplate',
),
mediaType: CockpitFoundationValueReader.mediaType(
json['mediaType'],
'$path.mediaType',
),
requiredFeatures: CockpitFoundationValueReader.ids(
json['requiredFeatures'],
'$path.requiredFeatures',
),
);
}