/** * Set whether uploaded files should be removed after handling the request * @param deleteUploadedFilesOnEnd true if uploaded files should be removed after handling the request * @return reference to this for fluency */ public io.vertx.rxjava.ext.web.handler.BodyHandler setDeleteUploadedFilesOnEnd(boolean deleteUploadedFilesOnEnd) { delegate.setDeleteUploadedFilesOnEnd(deleteUploadedFilesOnEnd); return this; }
/** * Set whether uploaded files should be removed after handling the request * @param deleteUploadedFilesOnEnd true if uploaded files should be removed after handling the request * @return reference to this for fluency */ public io.vertx.rxjava.ext.web.handler.BodyHandler setDeleteUploadedFilesOnEnd(boolean deleteUploadedFilesOnEnd) { delegate.setDeleteUploadedFilesOnEnd(deleteUploadedFilesOnEnd); return this; }
private void testFileUploadFileRemoval(Handler<RoutingContext> requestHandler, boolean deletedUploadedFilesOnEnd, int statusCode, String statusMessage) throws Exception { String uploadsDirectory = tempUploads.newFolder().getPath(); router.clear(); router.route().handler(BodyHandler.create() .setDeleteUploadedFilesOnEnd(deletedUploadedFilesOnEnd) .setUploadsDirectory(uploadsDirectory)); router.route().handler(requestHandler); sendFileUploadRequest(TestUtils.randomBuffer(50), statusCode, statusMessage); int uploadedFilesAfterEnd = deletedUploadedFilesOnEnd ? 0 : 1; assertWaitUntil(() -> uploadedFilesAfterEnd == vertx.fileSystem().readDirBlocking(uploadsDirectory).size()); }
@Test public void testFileDeleteOnLargeUpload() throws Exception { String uploadsDirectory = tempUploads.newFolder().getPath(); router.clear(); router.route().handler(BodyHandler.create() .setDeleteUploadedFilesOnEnd(true) .setBodyLimit(10000) .setUploadsDirectory(uploadsDirectory)); router.route().handler(ctx -> { fail(); ctx.fail(500); }); sendFileUploadRequest(TestUtils.randomBuffer(20000), 413, "Request Entity Too Large"); Thread.sleep(100); // wait until file is removed assertEquals(0, vertx.fileSystem().readDirBlocking(uploadsDirectory).size()); }
private void testFileUploadFileRemoval(Handler<RoutingContext> requestHandler, boolean deletedUploadedFilesOnEnd, int statusCode, String statusMessage) throws Exception { String uploadsDirectory = tempUploads.newFolder().getPath(); router.clear(); router.route().handler(BodyHandler.create() .setDeleteUploadedFilesOnEnd(deletedUploadedFilesOnEnd) .setUploadsDirectory(uploadsDirectory)); router.route().handler(requestHandler); sendFileUploadRequest(TestUtils.randomBuffer(50), statusCode, statusMessage); int uploadedFilesAfterEnd = deletedUploadedFilesOnEnd ? 0 : 1; assertWaitUntil(() -> uploadedFilesAfterEnd == vertx.fileSystem().readDirBlocking(uploadsDirectory).size()); }
@Test public void testFileDeleteOnLargeUpload() throws Exception { String uploadsDirectory = tempUploads.newFolder().getPath(); router.clear(); router.route().handler(BodyHandler.create() .setDeleteUploadedFilesOnEnd(true) .setBodyLimit(10000) .setUploadsDirectory(uploadsDirectory)); router.route().handler(ctx -> { fail(); ctx.fail(500); }); sendFileUploadRequest(TestUtils.randomBuffer(20000), 413, "Request Entity Too Large"); Thread.sleep(100); // wait until file is removed assertEquals(0, vertx.fileSystem().readDirBlocking(uploadsDirectory).size()); }