blob: 3b406e1655b95072ff6e0206e30df430045d4c8f [file] [log] [blame]
-module(user2).
-include_lib("dubboerl/include/dubbo.hrl").
-include_lib("dubboerl/include/hessian.hrl").
-define(CURRENT_CLASS_NAME,<<"com.ifcoder.demo.facade.User"/utf8>>).
-define(CURRENT_CLASS_VERSION,<<"0.0.0"/utf8>>).
-include("dubbo_service.hrl").
-export([test/0]).
%% API
-export([
getUserInfo/1,
getUserInfo/2,
genUserId/0,
genUserId/1,
queryUserInfo/1,
queryUserInfo/2,
queryUserList/1,
queryUserList/2]).
-export([get_method_999_list/0]).
%% behaviour
-callback getUserInfo(Arg0::list())-> #userInfo{}.
-callback genUserId()-> list().
-callback queryUserInfo(Arg0::#userInfoRequest{})-> #userInfo{}.
-callback queryUserList(Arg0::list())-> #userRes{}.
get_method_999_list()->
[
getUserInfo,
genUserId,
queryUserInfo,
queryUserList].
-spec getUserInfo(Arg0::list())->
{ok,reference()}|
{ok,reference(),Data::#userInfo{},RpcContent::list()}|
{error,Reason::timeout|no_provider|any()}.
getUserInfo(Arg0)->
getUserInfo(Arg0 ,#{}).
getUserInfo(Arg0, RequestOption)->
Data = #dubbo_rpc_invocation{
className = ?CURRENT_CLASS_NAME,
classVersion = ?CURRENT_CLASS_VERSION,
methodName = <<"getUserInfo">>,
parameterDesc = <<"Ljava/lang/String;"/utf8>>,
parameterTypes = [
#type_def{foreign_type = <<"java.lang.String">>,
native_type = string,
fieldnames = []}
],
parameters = [
Arg0
],
attachments = [
{<<"path">>, ?CURRENT_CLASS_NAME},
{<<"interface">> , ?CURRENT_CLASS_NAME}
]
},
Request = dubbo_adapter:reference(Data),
dubbo_invoker:invoke_request(?CURRENT_CLASS_NAME,Request,RequestOption).
-spec genUserId()->
{ok,reference()}|
{ok,reference(),Data::list(),RpcContent::list()}|
{error,Reason::timeout|no_provider|any()}.
genUserId()->
genUserId( #{}).
genUserId( RequestOption)->
Data = #dubbo_rpc_invocation{
className = ?CURRENT_CLASS_NAME,
classVersion = ?CURRENT_CLASS_VERSION,
methodName = <<"genUserId">>,
parameterDesc = <<""/utf8>>,
parameterTypes = [
],
parameters = [
],
attachments = [
{<<"path">>, ?CURRENT_CLASS_NAME},
{<<"interface">> , ?CURRENT_CLASS_NAME}
]
},
Request = dubbo_adapter:reference(Data),
dubbo_invoker:invoke_request(?CURRENT_CLASS_NAME,Request,RequestOption).
-spec queryUserInfo(Arg0::#userInfoRequest{})->
{ok,reference()}|
{ok,reference(),Data::#userInfo{},RpcContent::list()}|
{error,Reason::timeout|no_provider|any()}.
queryUserInfo(Arg0)->
queryUserInfo(Arg0 ,#{}).
queryUserInfo(Arg0, RequestOption)->
Data = #dubbo_rpc_invocation{
className = ?CURRENT_CLASS_NAME,
classVersion = ?CURRENT_CLASS_VERSION,
methodName = <<"queryUserInfo">>,
parameterDesc = <<"Lcom/ifcoder/demo/bean/UserInfoRequest;"/utf8>>,
parameterTypes = [
#type_def{foreign_type = <<"com.ifcoder.demo.bean.UserInfoRequest">>,
native_type = userInfoRequest,
fieldnames = record_info(fields,userInfoRequest)}
],
parameters = [
Arg0
],
attachments = [
{<<"path">>, ?CURRENT_CLASS_NAME},
{<<"interface">> , ?CURRENT_CLASS_NAME}
]
},
Request = dubbo_adapter:reference(Data),
dubbo_invoker:invoke_request(?CURRENT_CLASS_NAME,Request,RequestOption).
-spec queryUserList(Arg0::list())->
{ok,reference()}|
{ok,reference(),Data::#userRes{},RpcContent::list()}|
{error,Reason::timeout|no_provider|any()}.
queryUserList(Arg0)->
queryUserList(Arg0 ,#{}).
queryUserList(Arg0, RequestOption)->
Data = #dubbo_rpc_invocation{
className = ?CURRENT_CLASS_NAME,
classVersion = ?CURRENT_CLASS_VERSION,
methodName = <<"queryUserList">>,
parameterDesc = <<"Ljava/lang/String;"/utf8>>,
parameterTypes = [
#type_def{foreign_type = <<"java.lang.String">>,
native_type = string,
fieldnames = []}
],
parameters = [
Arg0
],
attachments = [
{<<"path">>, ?CURRENT_CLASS_NAME},
{<<"interface">> , ?CURRENT_CLASS_NAME}
]
},
Request = dubbo_adapter:reference(Data),
dubbo_invoker:invoke_request(?CURRENT_CLASS_NAME,Request,RequestOption).
test()->
queryUserInfo(#userInfoRequest{username = "name",requestId = "111"},#{sync=> true}).