toJson method
Implementation
@override
Object toJson() => {
if (name.isNotDefault) 'name': name,
if (title.isNotDefault) 'title': title,
if (producerProjectId.isNotDefault) 'producerProjectId': producerProjectId,
if (id.isNotDefault) 'id': id,
if (apis.isNotDefault) 'apis': [for (final i in apis) i.toJson()],
if (types.isNotDefault) 'types': [for (final i in types) i.toJson()],
if (enums.isNotDefault) 'enums': [for (final i in enums) i.toJson()],
if (documentation case final documentation?)
'documentation': documentation.toJson(),
if (backend case final backend?) 'backend': backend.toJson(),
if (http case final http?) 'http': http.toJson(),
if (quota case final quota?) 'quota': quota.toJson(),
if (authentication case final authentication?)
'authentication': authentication.toJson(),
if (context case final context?) 'context': context.toJson(),
if (usage case final usage?) 'usage': usage.toJson(),
if (endpoints.isNotDefault)
'endpoints': [for (final i in endpoints) i.toJson()],
if (control case final control?) 'control': control.toJson(),
if (logs.isNotDefault) 'logs': [for (final i in logs) i.toJson()],
if (metrics.isNotDefault) 'metrics': [for (final i in metrics) i.toJson()],
if (monitoredResources.isNotDefault)
'monitoredResources': [for (final i in monitoredResources) i.toJson()],
if (billing case final billing?) 'billing': billing.toJson(),
if (logging case final logging?) 'logging': logging.toJson(),
if (monitoring case final monitoring?) 'monitoring': monitoring.toJson(),
if (systemParameters case final systemParameters?)
'systemParameters': systemParameters.toJson(),
if (sourceInfo case final sourceInfo?) 'sourceInfo': sourceInfo.toJson(),
if (publishing case final publishing?) 'publishing': publishing.toJson(),
if (configVersion case final configVersion?)
'configVersion': configVersion.toJson(),
};