using System.ComponentModel.DataAnnotations; namespace Connected.ServiceModel.Storage; public class FileArgs : ServiceArgs { [Required] [MaxLength(1024)] public string Directory { get; set; } = default!; [MaxLength(256)] [Required] public string FileName { get; set; } = default!; } public sealed class DeleteFileArgs : FileArgs { } public sealed class UpdateFileArgs : FileArgs { public byte[]? Content { get; set; } } public sealed class MoveFileArgs : FileArgs { [Required] [MaxLength(256)] public string NewFileName { get; set; } = default!; [Required] [MaxLength(1024)] public string NewDirectory { get; set; } = default!; } public class DirectoryArgs : ServiceArgs { [Required] [MaxLength(1024)] public string Path { get; set; } = default!; } public sealed class InsertDirectoryArgs : DirectoryArgs { } public sealed class UpdateDirectoryArgs : DirectoryArgs { [Required] [MaxLength(1024)] public string NewPath { get; set; } = default!; } public sealed class DeleteDirectoryArgs : DirectoryArgs { }