From 3acf10b27e4d9bcfbb1adae90f88e60bef8201b9 Mon Sep 17 00:00:00 2001 From: Chomp Date: Thu, 13 Feb 2025 12:52:42 +0000 Subject: [PATCH] Flagged various methods as virtual to allow for overriding --- Libraries/Core/Callbacks/DialogueCallbacks.cs | 52 +++++++++---------- .../Core/Controllers/AchievementController.cs | 4 +- .../Core/Controllers/DialogueController.cs | 26 +++++----- .../Core/Controllers/ProfileController.cs | 24 ++++----- .../Core/Services/LocationLifecycleService.cs | 4 +- 5 files changed, 55 insertions(+), 55 deletions(-) diff --git a/Libraries/Core/Callbacks/DialogueCallbacks.cs b/Libraries/Core/Callbacks/DialogueCallbacks.cs index 3bdc18e9..9e7b6b17 100644 --- a/Libraries/Core/Callbacks/DialogueCallbacks.cs +++ b/Libraries/Core/Callbacks/DialogueCallbacks.cs @@ -36,7 +36,7 @@ public class DialogueCallbacks( /// /// /// - public string GetFriendList(string url, EmptyRequestData info, string sessionID) + public virtual string GetFriendList(string url, EmptyRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.GetFriendList(sessionID)); } @@ -48,7 +48,7 @@ public class DialogueCallbacks( /// /// /// - public string GetChatServerList(string url, GetChatServerListRequestData info, string sessionID) + public virtual string GetChatServerList(string url, GetChatServerListRequestData info, string sessionID) { var chatServer = new List { @@ -83,7 +83,7 @@ public class DialogueCallbacks( /// /// /// - public string GetMailDialogList(string url, GetMailDialogListRequestData info, string sessionID) + public virtual string GetMailDialogList(string url, GetMailDialogListRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.GenerateDialogueList(sessionID), 0, null, false); } @@ -95,7 +95,7 @@ public class DialogueCallbacks( /// /// /// - public string GetMailDialogView(string url, GetMailDialogViewRequestData info, string sessionID) + public virtual string GetMailDialogView(string url, GetMailDialogViewRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.GenerateDialogueView(info, sessionID), 0, null, false); } @@ -107,7 +107,7 @@ public class DialogueCallbacks( /// /// /// - public string GetMailDialogInfo(string url, GetMailDialogInfoRequestData info, string sessionID) + public virtual string GetMailDialogInfo(string url, GetMailDialogInfoRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.GetDialogueInfo(info.DialogId, sessionID)); } @@ -119,7 +119,7 @@ public class DialogueCallbacks( /// /// /// - public string RemoveDialog(string url, RemoveDialogRequestData info, string sessionID) + public virtual string RemoveDialog(string url, RemoveDialogRequestData info, string sessionID) { _dialogueController.RemoveDialogue(info.DialogId, sessionID); return _httpResponseUtil.EmptyArrayResponse(); @@ -132,7 +132,7 @@ public class DialogueCallbacks( /// /// /// - public string PinDialog(string url, PinDialogRequestData info, string sessionID) + public virtual string PinDialog(string url, PinDialogRequestData info, string sessionID) { _dialogueController.SetDialoguePin(info.DialogId, true, sessionID); return _httpResponseUtil.EmptyArrayResponse(); @@ -145,7 +145,7 @@ public class DialogueCallbacks( /// /// /// - public string UnpinDialog(string url, PinDialogRequestData info, string sessionID) + public virtual string UnpinDialog(string url, PinDialogRequestData info, string sessionID) { _dialogueController.SetDialoguePin(info.DialogId, false, sessionID); return _httpResponseUtil.EmptyArrayResponse(); @@ -158,7 +158,7 @@ public class DialogueCallbacks( /// /// /// - public string SetRead(string url, SetDialogReadRequestData info, string sessionID) + public virtual string SetRead(string url, SetDialogReadRequestData info, string sessionID) { _dialogueController.SetRead(info.Dialogs, sessionID); return _httpResponseUtil.EmptyArrayResponse(); @@ -171,7 +171,7 @@ public class DialogueCallbacks( /// /// /// - public string GetAllAttachments(string url, GetAllAttachmentsRequestData info, string sessionID) + public virtual string GetAllAttachments(string url, GetAllAttachmentsRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.GetAllAttachments(info.DialogId, sessionID)); } @@ -183,7 +183,7 @@ public class DialogueCallbacks( /// /// /// - public string SendMessage(string url, SendMessageRequest info, string sessionID) + public virtual string SendMessage(string url, SendMessageRequest info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.SendMessage(sessionID, info)); } @@ -195,7 +195,7 @@ public class DialogueCallbacks( /// /// /// - public string ListOutbox(string url, EmptyRequestData info, string sessionID) + public virtual string ListOutbox(string url, EmptyRequestData info, string sessionID) { return _httpResponseUtil.EmptyArrayResponse(); } @@ -207,7 +207,7 @@ public class DialogueCallbacks( /// /// /// - public string ListInbox(string url, EmptyRequestData info, string sessionID) + public virtual string ListInbox(string url, EmptyRequestData info, string sessionID) { return _httpResponseUtil.EmptyArrayResponse(); } @@ -219,7 +219,7 @@ public class DialogueCallbacks( /// /// /// - public string SendFriendRequest(string url, FriendRequestData info, string sessionID) + public virtual string SendFriendRequest(string url, FriendRequestData info, string sessionID) { return _httpResponseUtil.GetBody(_dialogueController.SendFriendRequest(sessionID, info)); } @@ -231,7 +231,7 @@ public class DialogueCallbacks( /// /// /// - public string AcceptAllFriendRequests(string url, EmptyRequestData info, string sessionID) + public virtual string AcceptAllFriendRequests(string url, EmptyRequestData info, string sessionID) { return _httpResponseUtil.NullResponse(); } @@ -243,7 +243,7 @@ public class DialogueCallbacks( /// /// /// - public string AcceptFriendRequest(string url, AcceptFriendRequestData info, string sessionID) + public virtual string AcceptFriendRequest(string url, AcceptFriendRequestData info, string sessionID) { return _httpResponseUtil.GetBody(true); } @@ -255,7 +255,7 @@ public class DialogueCallbacks( /// /// /// - public string DeclineFriendRequest(string url, DeclineFriendRequestData info, string sessionID) + public virtual string DeclineFriendRequest(string url, DeclineFriendRequestData info, string sessionID) { return _httpResponseUtil.GetBody(true); } @@ -267,7 +267,7 @@ public class DialogueCallbacks( /// /// /// - public string CancelFriendRequest(string url, CancelFriendRequestData info, string sessionID) + public virtual string CancelFriendRequest(string url, CancelFriendRequestData info, string sessionID) { return _httpResponseUtil.GetBody(true); } @@ -279,7 +279,7 @@ public class DialogueCallbacks( /// /// /// - public string DeleteFriend(string url, DeleteFriendRequest info, string sessionID) + public virtual string DeleteFriend(string url, DeleteFriendRequest info, string sessionID) { _dialogueController.DeleteFriend(sessionID, info); return _httpResponseUtil.NullResponse(); @@ -292,7 +292,7 @@ public class DialogueCallbacks( /// /// /// - public string IgnoreFriend(string url, UIDRequestData info, string sessionID) + public virtual string IgnoreFriend(string url, UIDRequestData info, string sessionID) { return _httpResponseUtil.NullResponse(); } @@ -304,32 +304,32 @@ public class DialogueCallbacks( /// /// /// - public string UnIgnoreFriend(string url, UIDRequestData info, string sessionID) + public virtual string UnIgnoreFriend(string url, UIDRequestData info, string sessionID) { return _httpResponseUtil.NullResponse(); } - public string ClearMail(string url, ClearMailMessageRequest info, string sessionID) + public virtual string ClearMail(string url, ClearMailMessageRequest info, string sessionID) { return _httpResponseUtil.EmptyArrayResponse(); } - public string CreateGroupMail(string url, CreateGroupMailRequest info, string sessionID) + public virtual string CreateGroupMail(string url, CreateGroupMailRequest info, string sessionID) { return _httpResponseUtil.EmptyArrayResponse(); } - public string ChangeMailGroupOwner(string url, ChangeGroupMailOwnerRequest info, string sessionID) + public virtual string ChangeMailGroupOwner(string url, ChangeGroupMailOwnerRequest info, string sessionID) { return "Not Implemented!"; // Not implemented in Node } - public string AddUserToMail(string url, AddUserGroupMailRequest info, string sessionID) + public virtual string AddUserToMail(string url, AddUserGroupMailRequest info, string sessionID) { return "Not Implemented!"; // Not implemented in Node } - public string RemoveUserFromMail(string url, RemoveUserGroupMailRequest info, string sessionID) + public virtual string RemoveUserFromMail(string url, RemoveUserGroupMailRequest info, string sessionID) { return "Not Implemented!"; // Not implemented in Node } diff --git a/Libraries/Core/Controllers/AchievementController.cs b/Libraries/Core/Controllers/AchievementController.cs index c449bfa6..3f33c7e3 100644 --- a/Libraries/Core/Controllers/AchievementController.cs +++ b/Libraries/Core/Controllers/AchievementController.cs @@ -9,7 +9,7 @@ public class AchievementController( DatabaseService _databaseService ) { - public GetAchievementsResponse GetAchievements(string sessionID) + public virtual GetAchievementsResponse GetAchievements(string sessionID) { return new GetAchievementsResponse { @@ -17,7 +17,7 @@ public class AchievementController( }; } - public CompletedAchievementsResponse GetAchievementStatics(string sessionID) + public virtual CompletedAchievementsResponse GetAchievementStatics(string sessionID) { var achievements = _databaseService.GetAchievements(); var stats = new Dictionary(); diff --git a/Libraries/Core/Controllers/DialogueController.cs b/Libraries/Core/Controllers/DialogueController.cs index 0b43bded..55f2f06e 100644 --- a/Libraries/Core/Controllers/DialogueController.cs +++ b/Libraries/Core/Controllers/DialogueController.cs @@ -33,7 +33,7 @@ public class DialogueController( /// /// /// - public void RegisterChatBot(IDialogueChatBot chatBot) // TODO: this is in with the helper types + public virtual void RegisterChatBot(IDialogueChatBot chatBot) // TODO: this is in with the helper types { if (_dialogueChatBots.Any(cb => cb.GetChatBot().Id == chatBot.GetChatBot().Id)) { @@ -61,7 +61,7 @@ public class DialogueController( /// /// session id /// GetFriendListDataResponse - public GetFriendListDataResponse GetFriendList(string sessionId) + public virtual GetFriendListDataResponse GetFriendList(string sessionId) { // Add all chatbots to the friends list var friends = GetActiveChatBots(); @@ -120,7 +120,7 @@ public class DialogueController( /// /// Session Id /// list of dialogs - public List GenerateDialogueList(string sessionId) + public virtual List GenerateDialogueList(string sessionId) { var data = new List(); foreach (var dialogueId in _dialogueHelper.GetDialogsForProfile(sessionId)) @@ -137,7 +137,7 @@ public class DialogueController( /// Dialog id /// Session Id /// DialogueInfo - public DialogueInfo GetDialogueInfo( + public virtual DialogueInfo GetDialogueInfo( string? dialogueId, string sessionId) { @@ -165,7 +165,7 @@ public class DialogueController( /// What type of message is being sent /// Player id /// UserDialogInfo list - public List GetDialogueUsers( + public virtual List GetDialogueUsers( Dialogue? dialog, MessageType? messageType, string sessionId) @@ -206,7 +206,7 @@ public class DialogueController( /// Get dialog request /// Session id /// GetMailDialogViewResponseData object - public GetMailDialogViewResponseData GenerateDialogueView( + public virtual GetMailDialogViewResponseData GenerateDialogueView( GetMailDialogViewRequestData request, string sessionId) { @@ -369,7 +369,7 @@ public class DialogueController( /// /// id of the dialog to remove /// Player id - public void RemoveDialogue( + public virtual void RemoveDialogue( string? dialogueId, string sessionId) { @@ -400,7 +400,7 @@ public class DialogueController( /// /// /// - public void SetDialoguePin(string? dialogueId, bool shouldPin, string sessionId) + public virtual void SetDialoguePin(string? dialogueId, bool shouldPin, string sessionId) { var dialog = _dialogueHelper.GetDialogsForProfile(sessionId).GetValueOrDefault(dialogueId); if (dialog is null) @@ -428,7 +428,7 @@ public class DialogueController( /// /// Dialog ids to set as read /// Player profile id - public void SetRead(List? dialogueIds, string sessionId) + public virtual void SetRead(List? dialogueIds, string sessionId) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); if (dialogs is null || !dialogs.Any()) @@ -460,7 +460,7 @@ public class DialogueController( /// Dialog to get mail attachments from /// Session id /// GetAllAttachmentsResponse or null if dialogue doesnt exist - public GetAllAttachmentsResponse GetAllAttachments(string dialogueId, string sessionId) + public virtual GetAllAttachmentsResponse GetAllAttachments(string dialogueId, string sessionId) { var dialogs = _dialogueHelper.GetDialogsForProfile(sessionId); var dialog = dialogs.TryGetValue(dialogueId, out var dialogInfo); @@ -493,7 +493,7 @@ public class DialogueController( /// /// /// - public string SendMessage( + public virtual string SendMessage( string sessionId, SendMessageRequest request) { @@ -562,7 +562,7 @@ public class DialogueController( return _timeUtil.GetTimeStamp() > message.DateTime + (message.MaxStorageTime ?? 0); } - public FriendRequestSendResponse SendFriendRequest(string sessionID, FriendRequestData request) + public virtual FriendRequestSendResponse SendFriendRequest(string sessionID, FriendRequestData request) { // To avoid needing to jump between profiles, auto-accept all friend requests var friendProfile = _profileHelper.GetFullProfile(request.To); @@ -607,7 +607,7 @@ public class DialogueController( }; } - public void DeleteFriend(string sessionID, DeleteFriendRequest request) + public virtual void DeleteFriend(string sessionID, DeleteFriendRequest request) { var profile = _saveServer.GetProfile(sessionID); var friendIndex = profile.FriendProfileIds.IndexOf(request.FriendId); diff --git a/Libraries/Core/Controllers/ProfileController.cs b/Libraries/Core/Controllers/ProfileController.cs index ac992713..3797dc39 100644 --- a/Libraries/Core/Controllers/ProfileController.cs +++ b/Libraries/Core/Controllers/ProfileController.cs @@ -40,7 +40,7 @@ public class ProfileController( /** * Handle /launcher/profiles */ - public List GetMiniProfiles() + public virtual List GetMiniProfiles() { return _saveServer.GetProfiles().Select(kv => GetMiniProfile(kv.Key)).ToList(); } @@ -48,7 +48,7 @@ public class ProfileController( /** * Handle launcher/profile/info */ - public MiniProfile GetMiniProfile(string sessionID) + public virtual MiniProfile GetMiniProfile(string sessionID) { var profile = _saveServer.GetProfile(sessionID); if (profile?.CharacterData == null) @@ -101,7 +101,7 @@ public class ProfileController( /** * Handle client/game/profile/list */ - public List GetCompleteProfile(string sessionID) + public virtual List GetCompleteProfile(string sessionID) { return _profileHelper.GetCompleteProfile(sessionID); } @@ -112,7 +112,7 @@ public class ProfileController( * @param sessionID Player id * @returns Profiles _id value */ - public string CreateProfile(ProfileCreateRequestData request, string sessionID) + public virtual string CreateProfile(ProfileCreateRequestData request, string sessionID) { return _createProfileService.CreateProfile(sessionID, request); } @@ -123,7 +123,7 @@ public class ProfileController( * @param sessionID * @returns IPmcData object */ - public PmcData GeneratePlayerScav(string sessionID) + public virtual PmcData GeneratePlayerScav(string sessionID) { return _playerScavGenerator.Generate(sessionID); } @@ -131,7 +131,7 @@ public class ProfileController( /** * Handle client/game/profile/nickname/validate */ - public string ValidateNickname(ValidateNicknameRequestData info, string sessionID) + public virtual string ValidateNickname(ValidateNicknameRequestData info, string sessionID) { if (info.Nickname.Length < 3) { @@ -150,7 +150,7 @@ public class ProfileController( * Handle client/game/profile/nickname/change event * Client allows player to adjust their profile name */ - public string ChangeNickname(ProfileChangeNicknameRequestData info, string sessionID) + public virtual string ChangeNickname(ProfileChangeNicknameRequestData info, string sessionID) { var output = ValidateNickname( new ValidateNicknameRequestData @@ -174,7 +174,7 @@ public class ProfileController( /** * Handle client/game/profile/voice/change event */ - public void ChangeVoice(ProfileChangeVoiceRequestData info, string sessionID) + public virtual void ChangeVoice(ProfileChangeVoiceRequestData info, string sessionID) { var pmcData = _profileHelper.GetPmcProfile(sessionID); pmcData.Info.Voice = info.Voice; @@ -183,7 +183,7 @@ public class ProfileController( /** * Handle client/game/profile/search */ - public List SearchProfiles(SearchProfilesRequestData info, string sessionID) + public virtual List SearchProfiles(SearchProfilesRequestData info, string sessionID) { var result = new List(); @@ -208,7 +208,7 @@ public class ProfileController( /** * Handle client/profile/status */ - public GetProfileStatusResponseData GetProfileStatus(string sessionId) + public virtual GetProfileStatusResponseData GetProfileStatus(string sessionId) { var account = _saveServer.GetProfile(sessionId).ProfileInfo; var response = new GetProfileStatusResponseData @@ -243,7 +243,7 @@ public class ProfileController( /** * Handle client/profile/view */ - public GetOtherProfileResponse GetOtherProfile(string sessionId, GetOtherProfileRequest request) + public virtual GetOtherProfileResponse GetOtherProfile(string sessionId, GetOtherProfileRequest request) { // Find the profile by the account ID, fall back to the current player if we can't find the account var profileToView = _profileHelper.GetFullProfileByAccountId(request.AccountId); @@ -327,7 +327,7 @@ public class ProfileController( /** * Handle client/profile/settings */ - public bool SetChosenProfileIcon(string sessionId, GetProfileSettingsRequest request) + public virtual bool SetChosenProfileIcon(string sessionId, GetProfileSettingsRequest request) { var profileToUpdate = _profileHelper.GetPmcProfile(sessionId); if (profileToUpdate == null) diff --git a/Libraries/Core/Services/LocationLifecycleService.cs b/Libraries/Core/Services/LocationLifecycleService.cs index 8a66cc78..293a4fcb 100644 --- a/Libraries/Core/Services/LocationLifecycleService.cs +++ b/Libraries/Core/Services/LocationLifecycleService.cs @@ -124,7 +124,7 @@ public class LocationLifecycleService /** * Handle client/match/local/start */ - public StartLocalRaidResponseData StartLocalRaid(string sessionId, StartLocalRaidRequestData request) + public virtual StartLocalRaidResponseData StartLocalRaid(string sessionId, StartLocalRaidRequestData request) { _logger.Debug($"Starting: {request.Location}"); @@ -400,7 +400,7 @@ public class LocationLifecycleService /** * Handle client/match/local/end */ - public void EndLocalRaid(string sessionId, EndLocalRaidRequestData request) + public virtual void EndLocalRaid(string sessionId, EndLocalRaidRequestData request) { // Clear bot loot cache _botLootCacheService.ClearCache();