Auto-pruning of syncshell, added metrics for pruning, return of count of users in fullgroupdto.

This commit is contained in:
cake
2025-12-05 22:01:48 +01:00
parent 0170ac377d
commit b1d7ee5b34
3 changed files with 10 additions and 1 deletions

View File

@@ -7,8 +7,9 @@ namespace LightlessSync.API.Dto.Group;
[MessagePackObject(keyAsPropertyName: true)]
public record GroupFullInfoDto(GroupData Group, UserData Owner, GroupPermissions GroupPermissions,
GroupUserPreferredPermissions GroupUserPermissions, GroupPairUserInfo GroupUserInfo,
Dictionary<string, GroupPairUserInfo> GroupPairUserInfos) : GroupInfoDto(Group, Owner, GroupPermissions)
Dictionary<string, GroupPairUserInfo> GroupPairUserInfos, int GroupUserCount) : GroupInfoDto(Group, Owner, GroupPermissions)
{
public GroupUserPreferredPermissions GroupUserPermissions { get; set; } = GroupUserPermissions;
public GroupPairUserInfo GroupUserInfo { get; set; } = GroupUserInfo;
public int GroupUserCount { get; set; } = GroupUserCount;
}

View File

@@ -0,0 +1,6 @@
using LightlessSync.API.Data;
namespace LightlessSync.API.Dto.Group
{
public record GroupPruneSettingsDto(GroupData Group, bool AutoPruneEnabled, int AutoPruneDays);
}

View File

@@ -68,6 +68,8 @@ public interface ILightlessHub
Task<GroupProfileDto> GroupGetProfile(GroupDto dto);
Task GroupSetProfile(GroupProfileDto dto);
Task GroupSetUserInfo(GroupPairUserInfoDto groupPair);
Task<GroupPruneSettingsDto?> GroupGetPruneSettings(GroupDto dto);
Task GroupSetPruneSettings(GroupPruneSettingsDto dto);
Task<List<GroupFullInfoDto>> GroupsGetAll();
Task GroupUnbanUser(GroupPairDto groupPair);
Task<int> GroupPrune(GroupDto group, int days, bool execute);