anchor.diff:              invalid
       end;
   convert_json_to_term(Request, Method)
  -    when Method =:= service_subscriptions ->
  +    when Method =:= service_subscriptions;
  +         Method =:= logging_file_set;
  +         Method =:= code_path_add;
  +         Method =:= code_path_remove ->
       case json_decode(Request) of
           Binary when is_binary(Binary) ->
               erlang:binary_to_list(Binary);
           _ ->
               invalid
       end;
  -convert_json_to_term(_Request, Method)
  +convert_json_to_term(Request, Method)
       when Method =:= services_add ->
  -    invalid; %XXX
  +    case json_decode(Request) of
  +        [_ | _] = L ->
  +            convert_json_to_term_services(L);
  +        _ ->
  +            invalid
  +    end;
   convert_json_to_term(Request, Method)
       when Method =:= services_remove;
            Method =:= services_restart;
  
positive.code:     cloudi_json_rpc:response_to_json(null, 3,
                                       <<"invalid_param">>, Id);
  format_json_rpc_call(Method, 2, Param, Timeout, Id) ->
      Arg1 = convert_erlang_to_term(Param),
      try cloudi_service_api_call(Method, Arg1, Timeout) of
          Result ->
              cloudi_json_rpc:response_to_json(
  
negative.code: convert_term_to_erlang_string(Result) ->
      cloudi_string:format_to_binary("~p", [Result]).
  
  convert_json_to_term(Request, Method)
      when Method =:= acl_add ->
      case json_decode(Request) of
          [_ | _] = L ->
              convert_json_to_term_acl_add(L);
          _ ->
              invalid
      end;
  convert_json_to_term(Request, Method)
      when Method =:= acl_remove ->
      case json_decode(Request) of
  