BulkInsertInstanceResource.fromJson constructor

BulkInsertInstanceResource.fromJson(
  1. Object? j
)

Implementation

factory BulkInsertInstanceResource.fromJson(Object? j) {
  final json = j as Map<String, Object?>;
  return BulkInsertInstanceResource(
    count: switch (json['count']) {
      null => null,
      Object $1 => decodeInt64($1),
    },
    instanceFlexibilityPolicy: switch (json['instanceFlexibilityPolicy']) {
      null => null,
      Object $1 => InstanceFlexibilityPolicy.fromJson($1),
    },
    instanceProperties: switch (json['instanceProperties']) {
      null => null,
      Object $1 => InstanceProperties.fromJson($1),
    },
    locationPolicy: switch (json['locationPolicy']) {
      null => null,
      Object $1 => LocationPolicy.fromJson($1),
    },
    minCount: switch (json['minCount']) {
      null => null,
      Object $1 => decodeInt64($1),
    },
    namePattern: switch (json['namePattern']) {
      null => null,
      Object $1 => decodeString($1),
    },
    perInstanceProperties: switch (json['perInstanceProperties']) {
      null => {},
      Map<String, Object?> $1 => {
        for (final e in $1.entries)
          decodeString(
            e.key,
          ): BulkInsertInstanceResourcePerInstanceProperties.fromJson(
            e.value,
          ),
      },
      _ => throw const FormatException(
        '"perInstanceProperties" is not an object',
      ),
    },
    sourceInstanceTemplate: switch (json['sourceInstanceTemplate']) {
      null => null,
      Object $1 => decodeString($1),
    },
  );
}