syntax = "proto3"; package datum; import "model.proto"; import "request.proto"; service DatumService { rpc create (DatumRequest) returns (DatumResponse); rpc read (DatumIdRequest) returns (DatumResponse); rpc update (DatumRequest) returns (DatumResponse); rpc delete (DatumIdRequest) returns (DatumResponse); rpc listAll (request.NoArgsRequest) returns (DatumListResponse); rpc listByCatalog (DatumListByCatalogRequest) returns (DatumListResponse); rpc listByDomain (DatumListByDomainRequest) returns (DatumListResponse); } message DatumRequest { model.Datum datum = 1; } message DatumIdRequest { string id = 1; } message DatumResponse { string status = 1; string message = 2; model.Datum datum = 3; } message DatumListResponse { string status = 1; string message = 2; repeated model.Datum datum = 3; } message DatumListByCatalogRequest { string catalog = 1; } message DatumListByDomainRequest { string domain = 1; }