Use interface instead of direct #group access

BugzID: 13487


Project: http://git-wip-us.apache.org/repos/asf/couchdb-fabric/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fabric/commit/1f0680fa
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fabric/tree/1f0680fa
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fabric/diff/1f0680fa

Branch: refs/heads/import
Commit: 1f0680faba3e1955200666e465b516d27d7ae1de
Parents: fcc1592
Author: Adam Kocoloski <[email protected]>
Authored: Tue Feb 26 14:06:36 2013 -0500
Committer: Adam Kocoloski <[email protected]>
Committed: Tue Feb 26 14:19:48 2013 -0500

----------------------------------------------------------------------
 src/fabric_rpc.erl         | 10 ++++++----
 src/fabric_view_reduce.erl |  7 ++++---
 2 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-fabric/blob/1f0680fa/src/fabric_rpc.erl
----------------------------------------------------------------------
diff --git a/src/fabric_rpc.erl b/src/fabric_rpc.erl
index 5c840f4..00169fd 100644
--- a/src/fabric_rpc.erl
+++ b/src/fabric_rpc.erl
@@ -110,8 +110,9 @@ map_view(DbName, DDoc, ViewName, QueryArgs) ->
     {ok, Pid} = gen_server:call(couch_view, {get_group_server, DbName, 
Group0}),
     {ok, Group} = couch_view_group:request_group(Pid, MinSeq),
     maybe_update_view_group(Pid, LastSeq, Stale),
-    erlang:monitor(process, Group#group.fd),
-    View = fabric_view:extract_view(Pid, ViewName, Group#group.views, 
ViewType),
+    erlang:monitor(process, couch_view_group:get_fd(Group)),
+    Views = couch_view_group:get_views(Group),
+    View = fabric_view:extract_view(Pid, ViewName, Views, ViewType),
     {ok, Total} = couch_view:get_row_count(View),
     Acc0 = #view_acc{
         db = Db,
@@ -153,8 +154,9 @@ reduce_view(DbName, Group0, ViewName, QueryArgs) ->
     {ok, Pid} = gen_server:call(couch_view, {get_group_server, DbName, 
Group0}),
     {ok, Group} = couch_view_group:request_group(Pid, MinSeq),
     maybe_update_view_group(Pid, LastSeq, Stale),
-    #group{views=Views, def_lang=Lang, fd=Fd} = Group,
-    erlang:monitor(process, Fd),
+    Lang = couch_view_group:get_language(Group),
+    Views = couch_view_group:get_views(Group),
+    erlang:monitor(process, couch_view_group:get_fd(Group)),
     {NthRed, View} = fabric_view:extract_view(Pid, ViewName, Views, reduce),
     ReduceView = {reduce, NthRed, Lang, View},
     Acc0 = #view_acc{group_level = GroupLevel, limit = Limit+Skip},

http://git-wip-us.apache.org/repos/asf/couchdb-fabric/blob/1f0680fa/src/fabric_view_reduce.erl
----------------------------------------------------------------------
diff --git a/src/fabric_view_reduce.erl b/src/fabric_view_reduce.erl
index ca206b3..e2c786b 100644
--- a/src/fabric_view_reduce.erl
+++ b/src/fabric_view_reduce.erl
@@ -25,8 +25,9 @@ go(DbName, GroupId, View, Args, Callback, Acc0) when 
is_binary(GroupId) ->
     go(DbName, DDoc, View, Args, Callback, Acc0);
 
 go(DbName, DDoc, VName, Args, Callback, Acc0) ->
-    #group{def_lang=Lang, views=Views} = Group =
-        couch_view_group:design_doc_to_view_group(DDoc),
+    Group = couch_view_group:design_doc_to_view_group(DDoc),
+    Lang = couch_view_group:get_language(Group),
+    Views = couch_view_group:get_views(Group),
     {NthRed, View} = fabric_view:extract_view(nil, VName, Views, reduce),
     {VName, RedSrc} = lists:nth(NthRed, View#view.reduce_funs),
     Workers = lists:map(fun(#shard{name=Name, node=N} = Shard) ->
@@ -47,7 +48,7 @@ go(DbName, DDoc, VName, Args, Callback, Acc0) ->
         keys = Args#view_query_args.keys,
         skip = Skip,
         limit = Limit,
-        lang = Group#group.def_lang,
+        lang = Lang,
         os_proc = OsProc,
         reducer = RedSrc,
         rows = dict:new(),

Reply via email to