public static FriendshipState GetFriendshipStateBasedOnInfo(FriendshipStateInfo info) { switch (info.Action) { case FriendshipAction.Accept: return new FriendshipAcceptedState(info); case FriendshipAction.Cancel: return new FriendshipCancelledState(info); case FriendshipAction.Reject: return new FriendshipRejectedState(info); case FriendshipAction.Request: return new FriendshipRequestedState(info); default: return new FriendshipNewState(info); } }
public FriendshipRejectedState(FriendshipStateInfo info) { _lastReceiverKey = info.Sender.Key; _lastSenderKey = info.Receiver.Key; _lastAction = info.Action; }