/ucengine/src/helpers/http_helpers.erl
Erlang | 51 lines | 19 code | 3 blank | 29 comment | 0 complexity | d90ee3de0db4c67eabd765f2cc461996 MD5 | raw file
1%% 2%% U.C.Engine - Unified Collaboration Engine 3%% Copyright (C) 2011 af83 4%% 5%% This program is free software: you can redistribute it and/or modify 6%% it under the terms of the GNU Affero General Public License as published by 7%% the Free Software Foundation, either version 3 of the License, or 8%% (at your option) any later version. 9%% 10%% This program is distributed in the hope that it will be useful, 11%% but WITHOUT ANY WARRANTY; without even the implied warranty of 12%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13%% GNU Affero General Public License for more details. 14%% 15%% You should have received a copy of the GNU Affero General Public License 16%% along with this program. If not, see <http://www.gnu.org/licenses/>. 17%% 18-module(http_helpers). 19 20-export([error_to_code/1, download/2]). 21 22error_to_code(Error) -> 23 case Error of 24 % 400 Bad Request 25 bad_parameters -> 400; 26 missing_parameters -> 400; 27 % 401 Unauthorized 28 unauthorized -> 401; 29 % 403 Forbidden 30 bad_credentials -> 403; 31 % 404 Not Found 32 not_found -> 404; 33 % 408 Request Timeout 34 request_timeout -> 408; 35 % 409 Conflict 36 conflict -> 409; 37 % 500 Internal Server Error 38 unexpected_error -> 500; 39 % 501 Not Implemented 40 not_implemented -> 501; 41 % Default error 42 _ -> 500 43 end. 44 45%% 46%% Download file 47%% 48download(Filename, Content) -> 49 [{status, 200}, 50 {header, {"Content-Disposition", "filename=" ++ yaws_api:url_encode(Filename)}}, 51 {content, "application/octet-stream", Content}].