public void Call(IWampClient client, string callId, string procUri, params TMessage[] arguments) { string resolvedUri = ResolveUri(client, procUri); WampCraAuthenticator <TMessage> wampAuth = GetOrCreateWampAuthenticatorForClient(client); WampRpcPermissions rpcPerm = wampAuth.CraPermissionsMapper.LookupRpcPermissions(resolvedUri); if (rpcPerm != null && rpcPerm.call) { mRpcServer.Call(client, callId, resolvedUri, arguments); } else { client.CallError(callId, "http://api.wamp.ws/error#not_authorized", "No permissions"); } }
private static void HandleWampException(IWampClient client, string callId, WampRpcCallException callException) { client.CallError(callId, callException.ErrorUri, callException.Message, callException.ErrorDetails); }
private static void HandleNonWampException(IWampClient client, string callId, Exception ex) { client.CallError(callId, ex.HelpLink, ex.Message); }