anchor.diff:  add_token(TokenMap, Pid) ->
       gen_server:call(Pid,{add_token_map,TokenMap}).
   
  +
  +-spec shutdown(Pid :: pid()) -> ok.
  +shutdown(Pid) -> 
  +    gen_server:cast(Pid,shutdown).
  +
  +
   %% gen_server.
   
   init([UserId]) ->
  
positive.code: handle_call(_Request, _From, State) ->
  	{reply, ignored, State}.
  
  handle_cast(_Msg, State) ->
  	{noreply, State}.
  
  handle_info({'DOWN', MonitorRef, process, _Object, _Info}, #state{sessions=Sessions}=State) ->
      NewSessions = remove_session_from_list(MonitorRef,Sessions),
      shutdown_if_done(NewSessions,State);
  handle_info(timeout, State) ->
      {stop,normal,State};
  handle_info(_Info, State) ->
  	{noreply, State}.
  
  terminate(_Reason, #state{id = Id}) ->
      tts_user_mgr:user_shutting_down(Id),
  	ok.
  
  code_change(_OldVsn, State, _Extra) ->
  
negative.code: -export([get_credential_list/1]).
  -export([connect_session/2]).
  -export([add_token/2]).
  -export([shutdown/1]).
  
  
  %% gen_server.
  