toProto method

Message toProto()

Implementation

midi_mapping_pb.Message toProto() {
  return switch (this) {
    MidiGetRequest() =>
      midi_mapping_pb.Message(getRequest: midi_mapping_pb.GetRequest()),
    MidiCreateRequest(:final mapping) => midi_mapping_pb.Message(
        createRequest: midi_mapping_pb.CreateRequest(
          mapping: mapping.toProto(),
        ),
      ),
    MidiCreateResponse() => throw ProtoException(),
    MidiUpdate(:final mapping) => midi_mapping_pb.Message(
        update: midi_mapping_pb.Update(
          mapping: midi_mapping_pb.MappingRecord(
            id: mapping.id,
            mapping: mapping.mapping.toProto(),
          ),
        ),
      ),
    MidiRemove(:final id) => midi_mapping_pb.Message(
        remove: midi_mapping_pb.Remove(
          id: id,
        ),
      ),
    MidiMessageReceived() => throw ProtoException(),
  };
}