diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2011-02-16 11:25:59 +0000 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2011-02-16 11:25:59 +0000 |
| commit | 1653edfe373e61c294331d05f75ea2fad6ac3b9c (patch) | |
| tree | 46eba9c34928308aed406a547f3f10a16742d070 | |
| parent | cd3baf58e01d69e2bf6b9a592dad62412670149f (diff) | |
| download | rabbitmq-server-git-1653edfe373e61c294331d05f75ea2fad6ac3b9c.tar.gz | |
Shorten transform_dir.
| -rw-r--r-- | src/rabbit_msg_store.erl | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index a9d1e21053..5bfd48fbed 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -1975,32 +1975,27 @@ force_recovery(BaseDir, Store) -> File <- list_sorted_file_names(Dir, ?FILE_EXTENSION_TMP)], ok. -for_each_file(Fun, Files) -> - [Fun(File) || File <- Files]. +for_each_file(D) -> + fun(Fun, Files) -> [Fun(filename:join(D, File)) || File <- Files] end. + +for_each_file(D1, D2) -> + fun(Fun, Files) -> [Fun(filename:join(D1, File), + filename:join(D2, File)) || File <- Files] end. transform_dir(BaseDir, Store, TransformFun) -> Dir = filename:join(BaseDir, atom_to_list(Store)), TmpDir = filename:join(Dir, ?TRANSFORM_TMP), + TransformFile = fun (A, B) -> transform_msg_file(A, B, TransformFun) end, case filelib:is_dir(TmpDir) of - true -> throw({error, transform_failed_previously}); + true -> + throw({error, transform_failed_previously}); false -> OldFileList = list_sorted_file_names(Dir, ?FILE_EXTENSION), - for_each_file(fun (File) -> - transform_msg_file(filename:join(Dir, File), - filename:join(TmpDir, File), - TransformFun) - end, OldFileList), - for_each_file(fun (File) -> - file:delete(filename:join(Dir, File)) - end, OldFileList), + (for_each_file(Dir, TmpDir))(TransformFile, OldFileList), + (for_each_file(Dir) )(fun file:delete/1, OldFileList), NewFileList = list_sorted_file_names(TmpDir, ?FILE_EXTENSION), - for_each_file(fun (File) -> - file:copy(filename:join(TmpDir, File), - filename:join(Dir, File)) - end, NewFileList), - for_each_file(fun (File) -> - file:delete(filename:join(TmpDir, File)) - end, NewFileList), + (for_each_file(TmpDir, Dir))(fun file:copy/2, NewFileList), + (for_each_file(TmpDir) )(fun file:delete/1, NewFileList), ok = file:del_dir(TmpDir) end. |
