couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kxe...@apache.org
Subject [2/3] chttpd commit: updated refs/heads/master to 79e7eba
Date Thu, 23 Apr 2015 20:43:56 GMT
json_req_obj compartible with backdoor interface

Clustered call would return additional fields:

- requested_path
- raw_path
- secObj

COUCHDB-2656


Project: http://git-wip-us.apache.org/repos/asf/couchdb-chttpd/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-chttpd/commit/0b5e15e0
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-chttpd/tree/0b5e15e0
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-chttpd/diff/0b5e15e0

Branch: refs/heads/master
Commit: 0b5e15e0ff9cd5ec13f5a332b0c3f1f2951ccfac
Parents: 1a15afc
Author: ILYA Khlopotov <iilyak@ca.ibm.com>
Authored: Thu Apr 16 07:50:58 2015 -0700
Committer: ILYA Khlopotov <iilyak@ca.ibm.com>
Committed: Thu Apr 16 07:50:58 2015 -0700

----------------------------------------------------------------------
 src/chttpd_external.erl | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-chttpd/blob/0b5e15e0/src/chttpd_external.erl
----------------------------------------------------------------------
diff --git a/src/chttpd_external.erl b/src/chttpd_external.erl
index 38932d1..6986a04 100644
--- a/src/chttpd_external.erl
+++ b/src/chttpd_external.erl
@@ -57,6 +57,7 @@ process_external_req(HttpReq, Db, Name) ->
 json_req_obj(Req, Db) -> json_req_obj(Req, Db, null).
 json_req_obj(#httpd{mochi_req=Req,
                method=Method,
+               requested_path_parts=RequestedPath,
                path_parts=Path,
                req_body=ReqBody
             }, Db, DocId) ->
@@ -75,21 +76,29 @@ json_req_obj(#httpd{mochi_req=Req,
     end,
     Headers = Req:get(headers),
     Hlist = mochiweb_headers:to_list(Headers),
-    {ok, Info} = fabric:get_db_info(Db),
+    {ok, Info} = get_db_info(Db),
 
     % add headers...
     {[{<<"info">>, {Info}},
         {<<"uuid">>, couch_uuids:new()},
         {<<"id">>, DocId},
         {<<"method">>, Method},
+        {<<"requested_path">>, RequestedPath},
         {<<"path">>, Path},
+        {<<"raw_path">>, ?l2b(Req:get(raw_path))},
         {<<"query">>, json_query_keys(to_json_terms(Req:parse_qs()))},
         {<<"headers">>, to_json_terms(Hlist)},
         {<<"body">>, Body},
         {<<"peer">>, ?l2b(Req:get(peer))},
         {<<"form">>, to_json_terms(ParsedForm)},
         {<<"cookie">>, to_json_terms(Req:parse_cookie())},
-        {<<"userCtx">>, couch_util:json_user_ctx(Db)}]}.
+        {<<"userCtx">>, couch_util:json_user_ctx(Db)},
+        {<<"secObj">>, couch_db:get_security(Db)}]}.
+
+get_db_info(#db{main_pid = nil} = Db) ->
+    fabric:get_db_info(Db);
+get_db_info(#db{} = Db) ->
+    couch_db:get_db_info(Db).
 
 to_json_terms(Data) ->
     to_json_terms(Data, []).


Mime
View raw message