public static void Accept(AbstractLogger logger, INotificationQueue notificationQueue, IMixWebCallFactory mixWebCallFactory, long invitationId, bool isTrusted, Action <AddFriendshipNotification> successCallback, Action failureCallback)
 {
     try
     {
         AddFriendshipRequest addFriendshipRequest = new AddFriendshipRequest();
         addFriendshipRequest.InvitationId = invitationId;
         addFriendshipRequest.IsTrusted    = isTrusted;
         AddFriendshipRequest request = addFriendshipRequest;
         IWebCall <AddFriendshipRequest, AddFriendshipResponse> webCall = mixWebCallFactory.FriendshipPut(request);
         webCall.OnResponse += delegate(object sender, WebCallEventArgs <AddFriendshipResponse> e)
         {
             AddFriendshipResponse response = e.Response;
             if (NotificationValidator.Validate(response.Notification))
             {
                 notificationQueue.Dispatch(response.Notification, delegate
                 {
                     successCallback(response.Notification);
                 }, failureCallback);
             }
             else
             {
                 logger.Critical("Failed to validate invitation response: " + JsonParser.ToJson(response));
                 failureCallback();
             }
         };
         webCall.OnError += delegate
         {
             failureCallback();
         };
         webCall.Execute();
     }
     catch (Exception ex)
     {
         logger.Critical("Unhandled exception: " + ex);
         failureCallback();
     }
 }
Esempio n. 2
0
 public IWebCall <AddFriendshipRequest, AddFriendshipResponse> FriendshipPut(AddFriendshipRequest request)
 {
     return(CreateWebCall <AddFriendshipRequest, AddFriendshipResponse>(HttpMethod.PUT, new Uri(host + "/friendship"), request));
 }