Use SubProgressMonitor
for each call the methods:
monitor.beginText("task", 100);
imageFile.create(imageInput, false, new SubProgressMonitor(monitor, 50));
descriptionFile.create(descriptionInput, false, new SubProgressMonitor(monitor, 50));
The sum of the 'tick' count given to all the sub progress monitors should match the 'tick' count given on the beginTask
call.