diff options
author | crupest <crupest@outlook.com> | 2021-02-10 14:31:31 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2021-02-10 14:31:31 +0800 |
commit | 872f0e9f094f37db9ff208d178ad5bea2fafc1a7 (patch) | |
tree | 27291dc4105e64ca3ed6ed43a8822cb911ed49a9 /BackEnd/Timeline/Models | |
parent | 253b06dfaa091d986a8714c081fd1e01679f538a (diff) | |
download | timeline-872f0e9f094f37db9ff208d178ad5bea2fafc1a7.tar.gz timeline-872f0e9f094f37db9ff208d178ad5bea2fafc1a7.tar.bz2 timeline-872f0e9f094f37db9ff208d178ad5bea2fafc1a7.zip |
...
Diffstat (limited to 'BackEnd/Timeline/Models')
6 files changed, 34 insertions, 59 deletions
diff --git a/BackEnd/Timeline/Models/Http/ErrorResponse.cs b/BackEnd/Timeline/Models/Http/ErrorResponse.cs index 1bc46680..3812471d 100644 --- a/BackEnd/Timeline/Models/Http/ErrorResponse.cs +++ b/BackEnd/Timeline/Models/Http/ErrorResponse.cs @@ -253,17 +253,6 @@ namespace Timeline.Models.Http {
return new CommonResponse(ErrorCodes.TimelineController.PostNotExist, string.Format(message, formatArgs));
}
-
- public static CommonResponse PostNoData(params object?[] formatArgs)
- {
- return new CommonResponse(ErrorCodes.TimelineController.PostNoData, string.Format(TimelineController_PostNoData, formatArgs));
- }
-
- public static CommonResponse CustomMessage_PostNoData(string message, params object?[] formatArgs)
- {
- return new CommonResponse(ErrorCodes.TimelineController.PostNoData, string.Format(message, formatArgs));
- }
-
}
}
diff --git a/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequest.cs b/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequest.cs index 20d1a25b..07d823ad 100644 --- a/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequest.cs +++ b/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequest.cs @@ -5,22 +5,6 @@ using Timeline.Models.Validation; namespace Timeline.Models.Http
{
- public class HttpTimelinePostCreateRequestData
- {
- /// <summary>
- /// Kind of the data.
- /// </summary>
- [Required]
- [TimelinePostDataKind]
- public string Kind { get; set; } = default!;
-
- /// <summary>
- /// The true data. If kind is text or markdown, this is a string. If kind is image, this is base64 of data.
- /// </summary>
- [Required]
- public string Data { get; set; } = default!;
- }
-
public class HttpTimelinePostCreateRequest
{
/// <summary>
@@ -28,6 +12,7 @@ namespace Timeline.Models.Http /// </summary>
[Required]
[MinLength(1)]
+ [MaxLength(100)]
public List<HttpTimelinePostCreateRequestData> DataList { get; set; } = default!;
/// <summary>
diff --git a/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequestData.cs b/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequestData.cs new file mode 100644 index 00000000..94ee5aa7 --- /dev/null +++ b/BackEnd/Timeline/Models/Http/HttpTimelinePostCreateRequestData.cs @@ -0,0 +1,19 @@ +using System.ComponentModel.DataAnnotations;
+
+namespace Timeline.Models.Http
+{
+ public class HttpTimelinePostCreateRequestData
+ {
+ /// <summary>
+ /// Mime type of the data.
+ /// </summary>
+ [Required]
+ public string ContentType { get; set; } = default!;
+
+ /// <summary>
+ /// Base64 of data.
+ /// </summary>
+ [Required]
+ public string Data { get; set; } = default!;
+ }
+}
diff --git a/BackEnd/Timeline/Models/MimeTypes.cs b/BackEnd/Timeline/Models/MimeTypes.cs new file mode 100644 index 00000000..37d3a893 --- /dev/null +++ b/BackEnd/Timeline/Models/MimeTypes.cs @@ -0,0 +1,14 @@ +namespace Timeline.Models
+{
+ public static class MimeTypes
+ {
+ public const string ImagePng = "image/png";
+ public const string ImageJpeg = "image/jpeg";
+ public const string ImageGif = "image/gif";
+ public const string ImageWebp = "image/webp";
+ public const string TextPlain = "text/plain";
+ public const string TextMarkdown = "text/markdown";
+ public const string TextJson = "text/json";
+ public const string ApplicationJson = "application/json";
+ }
+}
diff --git a/BackEnd/Timeline/Models/TimelinePostContentTypes.cs b/BackEnd/Timeline/Models/TimelinePostContentTypes.cs deleted file mode 100644 index d432e03c..00000000 --- a/BackEnd/Timeline/Models/TimelinePostContentTypes.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.Collections.Generic;
-
-namespace Timeline.Models
-{
- public static class TimelinePostDataKind
- {
- public static IReadOnlyList<string> AllTypes { get; } = new List<string> { Text, Image, Markdown };
-
- public const string Text = "text";
- public const string Image = "image";
- public const string Markdown = "markdown";
- }
-}
diff --git a/BackEnd/Timeline/Models/Validation/TimelinePostContentTypeValidator.cs b/BackEnd/Timeline/Models/Validation/TimelinePostContentTypeValidator.cs deleted file mode 100644 index b65c846c..00000000 --- a/BackEnd/Timeline/Models/Validation/TimelinePostContentTypeValidator.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System;
-using System.Linq;
-
-namespace Timeline.Models.Validation
-{
- public class TimelinePostDataKindValidator : StringSetValidator
- {
- public TimelinePostDataKindValidator() : base(TimelinePostDataKind.AllTypes.ToArray()) { }
- }
-
- [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)]
- public class TimelinePostDataKindAttribute : ValidateWithAttribute
- {
- public TimelinePostDataKindAttribute() : base(typeof(TimelinePostDataKindValidator))
- {
-
- }
- }
-}
|