This commit is contained in:
2025-09-05 17:16:03 +04:30
parent d5f0773a9a
commit a98127137f
8 changed files with 61 additions and 1 deletions
+3
View File
@@ -0,0 +1,3 @@
namespace VizhTalk.Grpc.CDN;
public sealed partial class UploadFileCommand;
+10
View File
@@ -4,6 +4,16 @@ option csharp_namespace="VizhTalk.Grpc.CDN";
package greet; package greet;
import "DTOs.proto";
message UploadFileCommand{ message UploadFileCommand{
bytes file = 1; bytes file = 1;
Id mediaGroupId = 2;
string clientId = 3;
string fileName = 4;
}
message CreateMediaGroupCommand{
string key = 1;
bool isSecure = 2;
string title = 3;
} }
+3
View File
@@ -9,5 +9,8 @@ message Id{
} }
message UploadFileDTO{ message UploadFileDTO{
Id mediaGroupMediaId = 1;
}
message MediaGroupDTO{
Id id = 1; Id id = 1;
} }
+36
View File
@@ -0,0 +1,36 @@
using VizhTalk.BuildingBlocks.Domain;
namespace VizhTalk.Grpc.CDN;
public sealed partial class Id
{
public static implicit operator string(Id id)
=> EncryptionIdHelper.Decrypt(id.Value);
public static implicit operator Id(string id)
=> new Id()
{
Value = EncryptionIdHelper.Encrypt(id)
};
public static implicit operator int(Id id)
=> int.Parse(EncryptionIdHelper.Decrypt(id.Value));
public static implicit operator Guid(Id id)
=> Guid.Parse(EncryptionIdHelper.Decrypt(id.Value));
public static implicit operator long(Id id)
=> long.Parse(EncryptionIdHelper.Decrypt(id.Value));
public static implicit operator Id(int id)
=> (Id)id.ToString();
public static implicit operator Id(long id)
=> (Id)id.ToString();
public static implicit operator Id(Guid id)
=> (Id)id.ToString();
}
+1
View File
@@ -9,4 +9,5 @@ import "Commands.proto";
service CDNGrpc{ service CDNGrpc{
rpc UploadFile (UploadFileCommand) returns (UploadFileDTO); rpc UploadFile (UploadFileCommand) returns (UploadFileDTO);
rpc CreateMediaGroup (CreateMediaGroupCommand) returns (MediaGroupDTO);
} }
@@ -10,6 +10,9 @@
<PackageReference Include="Grpc.Net.Client" Version="2.71.0" /> <PackageReference Include="Grpc.Net.Client" Version="2.71.0" />
<PackageReference Include="Grpc.Tools" Version="2.58.0" PrivateAssets="All" /> <PackageReference Include="Grpc.Tools" Version="2.58.0" PrivateAssets="All" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\VizhTalk.BuildingBlocks.Domain\VizhTalk.BuildingBlocks.Domain.csproj" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Protobuf Include="Services.proto" GrpcServices="Both" /> <Protobuf Include="Services.proto" GrpcServices="Both" />
<Protobuf Include="DTOs.proto" GrpcServices="Both" /> <Protobuf Include="DTOs.proto" GrpcServices="Both" />
@@ -7,6 +7,6 @@ namespace Vizhtalk.CDN.Presentation.Entities
{ {
public MediaId MediaId { get; set; } public MediaId MediaId { get; set; }
public MediaGroupId MediaGroupId { get; set; } public MediaGroupId MediaGroupId { get; set; }
public List<MediaClient> MediaClients { get; set; } public List<MediaClient> MediaClients { get; set; }
} }
} }
@@ -5,6 +5,10 @@ namespace Vizhtalk.CDN.Presentation.Services;
public class CDNService : CDNGrpc.CDNGrpcBase public class CDNService : CDNGrpc.CDNGrpcBase
{ {
public override Task<MediaGroupDTO> CreateMediaGroup(CreateMediaGroupCommand request, ServerCallContext context)
{
return base.CreateMediaGroup(request, context);
}
public override Task<UploadFileDTO> UploadFile(UploadFileCommand request, ServerCallContext context) public override Task<UploadFileDTO> UploadFile(UploadFileCommand request, ServerCallContext context)
{ {
return base.UploadFile(request, context); return base.UploadFile(request, context);