@Override
 public void setUploadCompleted(CallingContext cc)
     throws ODKEntityPersistException, ODKOverQuotaException {
   fsc.setUploadCompleted(true);
   if (fsc.getExternalServicePublicationOption() == ExternalServicePublicationOption.UPLOAD_ONLY) {
     fsc.setOperationalStatus(OperationalStatus.COMPLETED);
   }
   Datastore ds = cc.getDatastore();
   User user = cc.getCurrentUser();
   ds.putEntity(fsc, user);
 }
 /** Helper function for constructors. */
 protected static FormServiceCursor createFormServiceCursor(
     IForm form,
     CommonFieldsBase entity,
     ExternalServicePublicationOption externalServiceOption,
     ExternalServiceType type,
     CallingContext cc)
     throws ODKDatastoreException {
   FormServiceCursor formServiceCursor =
       FormServiceCursor.createFormServiceCursor(form, type, entity, cc);
   formServiceCursor.setExternalServiceOption(externalServiceOption);
   formServiceCursor.setIsExternalServicePrepared(false);
   formServiceCursor.setOperationalStatus(OperationalStatus.ESTABLISHED);
   formServiceCursor.setEstablishmentDateTime(new Date());
   formServiceCursor.setUploadCompleted(false);
   return formServiceCursor;
 }