code: @Override
      @Transactional(value = MillJpaRepoConfig.TRANSACTION_MANAGER_BEAN, propagation = Propagation.REQUIRES_NEW)
      public boolean flagAsDeleted(String account,
                                   String storeId,
                                   String spaceId,
                                   String contentId,
                                   Date eventTimestamp) throws ManifestItemWriteException {
          try {
  
              ManifestItem item = this.manifestItemRepo
                  .findByAccountAndStoreIdAndSpaceIdAndContentId(account,
                                                                 storeId,
                                                                 spaceId,
                                                                 contentId);
  
              if (item != null) {
                  if (eventOutOfOrder(item, eventTimestamp)) {
                      return false;
                  }
  
                  if (item.isDeleted()) {
                      log.warn("item {}/{}/{}/{} has already been deleted - " +
                               "there appears to have been a duplicate event " +
                               "or possibly a missed content add event - ignoring...",
                               account,
                               storeId,
                               spaceId,
                               contentId);
  
                  }
              } else {
                  log.warn("no manifest item {}/{}/{}/{} : nothing to delete - adding deleted manifest entry...",
                           account,
                           storeId,
                           spaceId,
                           contentId);
  
                  item = new ManifestItem();
                  item.setAccount(account);
                  item.setStoreId(storeId);
                  item.setSpaceId(spaceId);
                  item.setContentId(contentId);
                  item.setContentMimetype("unknown");
                  item.setContentSize("0");
                  item.setContentChecksum("unknown");
              }
  
              item.setDeleted(true);
              item.setModified(eventTimestamp);
              ManifestItem result = this.manifestItemRepo.saveAndFlush(item);
              log.info("successfully processed flag as deleted: {}", result);
              return true;
          } catch (Exception ex) {
              String message = "failed to flag item as deleted item: " + ex.getMessage();
              log.error(message);
              throw new ManifestItemWriteException(message, ex);
          }
      }
docs: /* (non-Javadoc)
  @see org.duracloud.mill.manifest.ManifestStore#flagAsDeleted(java.lang.String, java.lang.String, java.lang
  .String, java.lang.String)