filesystem.proto 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. syntax = "proto3";
  2. package filesystem;
  3. option go_package = "./filesystem";
  4. message DomainReq {
  5. string name = 1;
  6. repeated string metaFields = 2;//必须元数据
  7. }
  8. message DomainResp {
  9. bool state = 1;
  10. }
  11. //
  12. message SaveFileReq {
  13. string domain = 1;//存入哪个buckets
  14. string fileId = 2;
  15. map<string, string> meta = 3;//元数据
  16. bytes rawFileContent = 4;//文件内容
  17. string charset = 5;//文件格式
  18. }
  19. //
  20. message FileOpResp {
  21. bool state = 1;
  22. string domain = 2;
  23. string fileId = 3;//文件ID
  24. }
  25. //
  26. message UpdateFileMetaReq{
  27. string domain = 1;//存入哪个buckets
  28. string fileId = 2;
  29. map<string, string> meta = 3;//元数据
  30. }
  31. //
  32. message LoadFileReq{
  33. string domain = 1;//存入哪个buckets
  34. string fileId = 2;//objectName
  35. }
  36. //
  37. message LoadFileResp{
  38. map<string, string> meta = 2;//元数据
  39. bytes rawFileContent = 3;//文件内容
  40. }
  41. //
  42. message LoadFileMetaResp{
  43. map<string, string> meta = 2;//元数据
  44. }
  45. message OssUrlResp{
  46. string ossUrl = 1;
  47. }
  48. service FileSystem {
  49. //创建域
  50. rpc CreateDomain(DomainReq) returns(DomainResp);
  51. //更新域
  52. rpc UpdateDomainMeta(DomainReq)returns(DomainResp);
  53. //删除域
  54. rpc DeleteDomain(DomainReq)returns(DomainResp);
  55. //保存文件
  56. rpc SaveFile(SaveFileReq)returns(FileOpResp);
  57. //更新文件元数据
  58. rpc UpdateFileMeta(UpdateFileMetaReq)returns(FileOpResp);
  59. //删除文件
  60. rpc DeleteFile(LoadFileReq)returns(FileOpResp);
  61. //获取文件
  62. rpc GetFile(LoadFileReq)returns(LoadFileResp);
  63. //获取文件元数据
  64. rpc GetFileMeta(LoadFileReq)returns(LoadFileMetaResp);
  65. //获取签名OSSURL
  66. rpc GetOssUril(LoadFileReq)returns(OssUrlResp);
  67. }