upload method Null safety

Future<NCMBFile> upload(
  1. String fileName,
  2. dynamic blob,
  3. {dynamic acl = '',
  4. dynamic mimeType = ''}
)

Implementation

static Future<NCMBFile> upload(String fileName, dynamic blob,
    {acl = '', mimeType = ''}) async {
  List mime;
  if (mimeType == '') {
    if (blob is Uint8List) {
      var res = lookupMimeType('test', headerBytes: blob);
      if (res != null) {
        mime = res.split('/');
      } else {
        mime = ['text', 'plain'];
      }
    } else {
      mime = ['text', 'plain'];
    }
  } else {
    mime = mimeType.split('/');
  }
  if (blob is! Uint8List) blob = utf8.encode(blob);

  if (acl == '') {
    acl = new NCMBAcl()
      ..setPublicReadAccess(true)
      ..setPublicWriteAccess(true);
  }
  NCMBRequest r = new NCMBRequest();
  Map response = await r.exec('POST', 'files',
      objectId: fileName,
      fields: {
        'acl': acl,
        'file': blob,
        'mimeType': MediaType(mime[0], mime[1]),
      },
      multipart: true);
  var f = NCMBFile();
  f.sets(response);
  return f;
}