private ServerBackup performBackupWithoutAuthentication(Username username,
HttpLocalizedOperationResult result,
BackupInitiator initiatedBy) {
DateTime backupTime = timeProvider.currentDateTime();
ServerBackup serverBackup = doPerformBackup(username, result, backupTime);
String postBackupScriptFile = postBackupScriptFile();
if (isNotBlank(postBackupScriptFile)) {
PostBackupScript postBackupScript = new PostBackupScript(postBackupScriptFile, initiatedBy, username, serverBackup, backupLocation(), backupTime.toDate());
if (postBackupScript.execute()) {
result.setMessage(joinSentences(result.message(), "Post backup script executed successfully."));
} else {
result.internalServerError(joinSentences(result.message(), "Post backup script exited with an error, check the server log for details."));
}
}
return serverBackup;
}