private void archive(
     String postProcessObjectKey,
     String postProcessBucket,
     String postProcessFolder,
     S3ArchivingOption archivingOption) {
   boolean isMove = true;
   String destBucket = s3ConfigBean.s3Config.bucket;
   switch (archivingOption) {
     case MOVE_TO_PREFIX:
       break;
     case MOVE_TO_BUCKET:
       destBucket = postProcessBucket;
       break;
     case COPY_TO_PREFIX:
       isMove = false;
       break;
     case COPY_TO_BUCKET:
       isMove = false;
       destBucket = postProcessBucket;
       break;
     default:
       throw new IllegalStateException("Invalid Archive option : " + archivingOption.name());
   }
   String srcObjKey =
       postProcessObjectKey.substring(
           postProcessObjectKey.lastIndexOf(s3ConfigBean.s3Config.delimiter) + 1);
   String destKey = postProcessFolder + srcObjKey;
   AmazonS3Util.copy(
       s3Client, s3ConfigBean.s3Config.bucket, postProcessObjectKey, destBucket, destKey, isMove);
 }