267 lines
9.9 KiB
C#
267 lines
9.9 KiB
C#
using Core.Annotations;
|
|
using Core.Callbacks;
|
|
using Core.DI;
|
|
using Core.Models.Eft.Common;
|
|
using Core.Models.Eft.Common.Request;
|
|
using Core.Models.Eft.Dialog;
|
|
using Core.Utils;
|
|
|
|
namespace Core.Routers.Static;
|
|
|
|
[Injectable(InjectableTypeOverride = typeof(StaticRouter))]
|
|
public class DialogStaticRouter : StaticRouter
|
|
{
|
|
protected static DialogueCallbacks _dialogueCallbacks;
|
|
|
|
public DialogStaticRouter(
|
|
JsonUtil jsonUtil,
|
|
DialogueCallbacks dialogueCallbacks
|
|
) : base(
|
|
jsonUtil,
|
|
[
|
|
new RouteAction(
|
|
"/client/chatServer/list",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetChatServerList(url, info as GetChatServerListRequestData, sessionID),
|
|
typeof(GetChatServerListRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/list",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetMailDialogList(url, info as GetMailDialogListRequestData, sessionID),
|
|
typeof(GetMailDialogListRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/view",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetMailDialogView(url, info as GetMailDialogViewRequestData, sessionID),
|
|
typeof(GetMailDialogViewRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/info",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetMailDialogInfo(url, info as GetMailDialogInfoRequestData, sessionID),
|
|
typeof(GetMailDialogInfoRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/remove",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.RemoveDialog(url, info as RemoveDialogRequestData, sessionID),
|
|
typeof(RemoveDialogRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/pin",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.PinDialog(url, info as PinDialogRequestData, sessionID),
|
|
typeof(PinDialogRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/unpin",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.UnpinDialog(url, info as PinDialogRequestData, sessionID),
|
|
typeof(PinDialogRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/read",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.SetRead(url, info as SetDialogReadRequestData, sessionID),
|
|
typeof(SetDialogReadRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/remove",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.RemoveMail(url, info as RemoveMailMessageRequest, sessionID),
|
|
typeof(RemoveMailMessageRequest)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/getAllAttachments",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetAllAttachments(url, info as GetAllAttachmentsRequestData, sessionID),
|
|
typeof(GetAllAttachmentsRequestData)),
|
|
new RouteAction(
|
|
"/client/mail/msg/send",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.SendMessage(url, info as SendMessageRequest, sessionID),
|
|
typeof(SendMessageRequest)),
|
|
new RouteAction(
|
|
"client/mail/dialog/clear",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.ClearMail(url, info as ClearMailMessageRequest, sessionID),
|
|
typeof(ClearMailMessageRequest)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/group/create",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.CreateGroupMail(url, info as CreateGroupMailRequest, sessionID),
|
|
typeof(CreateGroupMailRequest)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/group/owner/change",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.ChangeMailGroupOwner(url, info as ChangeGroupMailOwnerRequest, sessionID),
|
|
typeof(ChangeGroupMailOwnerRequest)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/group/users/add",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.AddUserToMail(url, info as AddUserGroupMailRequest, sessionID),
|
|
typeof(AddUserGroupMailRequest)),
|
|
new RouteAction(
|
|
"/client/mail/dialog/group/users/remove",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.RemoveUserFromMail(url, info as RemoveUserGroupMailRequest, sessionID),
|
|
typeof(RemoveUserGroupMailRequest)),
|
|
new RouteAction(
|
|
"/client/friend/list",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.GetFriendList(url, info as EmptyRequestData, sessionID)),
|
|
new RouteAction(
|
|
"/client/friend/request/list/outbox",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.ListOutbox(url, info as EmptyRequestData, sessionID)),
|
|
new RouteAction(
|
|
"/client/friend/request/list/inbox",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.ListInbox(url, info as EmptyRequestData, sessionID)),
|
|
new RouteAction(
|
|
"/client/friend/request/send",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.SendFriendRequest(url, info as FriendRequestData, sessionID),
|
|
typeof(FriendRequestData)),
|
|
new RouteAction(
|
|
"/client/friend/request/accept-all",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.AcceptAllFriendRequests(url, info as EmptyRequestData, sessionID)),
|
|
new RouteAction(
|
|
"/client/friend/request/accept",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.AcceptFriendRequest(url, info as AcceptFriendRequestData, sessionID),
|
|
typeof(AcceptFriendRequestData)),
|
|
new RouteAction(
|
|
"/client/friend/request/decline",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.DeclineFriendRequest(url, info as DeclineFriendRequestData, sessionID),
|
|
typeof(DeclineFriendRequestData)),
|
|
new RouteAction(
|
|
"/client/friend/request/cancel",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.CancelFriendRequest(url, info as CancelFriendRequestData, sessionID),
|
|
typeof(CancelFriendRequestData)),
|
|
new RouteAction(
|
|
"/client/friend/delete",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.DeleteFriend(url, info as DeleteFriendRequest, sessionID),
|
|
typeof(DeleteFriendRequest)),
|
|
new RouteAction(
|
|
"/client/friend/ignore/set",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.IgnoreFriend(url, info as UIDRequestData, sessionID),
|
|
typeof(UIDRequestData)),
|
|
new RouteAction(
|
|
"",
|
|
(
|
|
url,
|
|
info,
|
|
sessionID,
|
|
output
|
|
) => _dialogueCallbacks.UnIgnoreFriend(url, info as UIDRequestData, sessionID),
|
|
typeof(UIDRequestData)),
|
|
]
|
|
)
|
|
{
|
|
_dialogueCallbacks = dialogueCallbacks;
|
|
}
|
|
}
|