filesystem.proto 1.4 KB

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