//Example of topology syntax = "proto3"; package slice; import "google/protobuf/empty.proto"; import "context.proto"; service SliceService { rpc CreateUpdateSlice ( TransportSlice ) returns (SliceStatus) {} rpc DeleteSlice ( TransportSlice ) returns (google.protobuf.Empty) {} } message SliceEndpoint { context.EndPoint port_id = 1; } message TransportSlice { SliceId slice_id = 1; repeated slice.SliceEndpoint endpoints = 2; repeated context.Constraint constraints = 3; SliceStatus status = 4; } message SliceId { context.Uuid slice_id = 1; } message SliceStatus { slice.SliceId slice_id = 1; SliceStatusEnum status = 2; } enum SliceStatusEnum { PLANNED = 0; INIT = 1; ACTIVE = 2; DEINIT = 3; }