async onPostQueuedFaces()

in source/api/lib/operations/faceCollectionOp.js [172:209]


  async onPostQueuedFaces() {
    const data = this.request.body;

    if (!data.blob || !data.tempId || !data.dataUrl) {
      throw new Error('blob and tempId must not be null');
    }

    if (!CommonUtils.validateUuid(data.tempId)) {
      throw new Error('invalid tempId');
    }

    if (!CommonUtils.validateImageBlob(data.blob)) {
      throw new Error('invalid blob');
    }

    if (!CommonUtils.validateImageBlob(data.dataUrl)) {
      throw new Error('invalid dataUrl');
    }

    if (!CommonUtils.validateUuid(data.uuid)) {
      throw new Error('invalid uuid');
    }

    if (!CommonUtils.validateS3Uri(data.contentUrl)) {
      throw new Error('invalid contentUrl');
    }

    const id = (this.request.pathParameters || {}).uuid
      || data.collectionId
      || Environment.Rekognition.CollectionId;

    if (!id || !CommonUtils.validateFaceCollectionId(id)) {
      throw new Error('invalid collection id');
    }

    const indexer = new FaceCollection(id, data);
    return super.onPOST(await indexer.queueNow());
  }