syntax = "proto3"; package llnwApi.Delivery; option java_multiple_files = true; option java_package = "io.grpc.llnw.delivery"; service DeliveryService { rpc ListDelivery(ShortNameRequest)returns(DeliveryList){}; rpc ValidateDelivery(DeliveryRequest)returns(DeliveryEntity){}; rpc CreateDelivery(DeliveryRequest)returns(DeliveryEntity){}; rpc GetDelivery(IdRequest)returns(DeliveryEntity){}; rpc UpdateDelivery(DeliveryRequest)returns(DeliveryEntity){}; rpc DeleteDelivery(IdRequest)returns(DeliveryEntity){}; } message Base{ string username = 1; string key = 2; } message ShortNameRequest{ Base base = 1; string shortName = 2; } message DeliveryRequest{ Base base = 1; DeliveryEntity delivery = 2; } message IdRequest{ Base base = 1; string id = 2; } message ProtocolSetOptions{ string name = 1; repeated string parameters = 2; string source = 3; } message ProtocolSet{ string sourceProtocol = 1; string publishedProtocol = 2; repeated ProtocolSetOptions options = 3; } message DeliveryEntity{ string uuid = 1; bool isEnabled = 2; string shortname = 3; string status = 4; string sourceHostname = 5; string publishedHostname = 6; string sourceUrlPath = 7; string publishedUrlPath = 8; repeated ProtocolSet protocolSets = 9; } message DeliveryList{ repeated DeliveryEntity deliveries = 1; }