public static void Save(IValueSink sink, UnconfirmedServiceRequest value)
{
sink.EnterChoice((byte)value.Tag);
switch(value.Tag)
{
case Tags.IAm:
Value<IAmWrapper>.Save(sink, (IAmWrapper)value);
break;
case Tags.IHave:
Value<IHaveWrapper>.Save(sink, (IHaveWrapper)value);
break;
case Tags.UnconfirmedCOVNotification:
Value<UnconfirmedCOVNotificationWrapper>.Save(sink, (UnconfirmedCOVNotificationWrapper)value);
break;
case Tags.UnconfirmedEventNotification:
Value<UnconfirmedEventNotificationWrapper>.Save(sink, (UnconfirmedEventNotificationWrapper)value);
break;
case Tags.UnconfirmedPrivateTransfer:
Value<UnconfirmedPrivateTransferWrapper>.Save(sink, (UnconfirmedPrivateTransferWrapper)value);
break;
case Tags.UnconfirmedTextMessage:
Value<UnconfirmedTextMessageWrapper>.Save(sink, (UnconfirmedTextMessageWrapper)value);
break;
case Tags.TimeSynchronization:
Value<TimeSynchronizationWrapper>.Save(sink, (TimeSynchronizationWrapper)value);
break;
case Tags.WhoHas:
Value<WhoHasWrapper>.Save(sink, (WhoHasWrapper)value);
break;
case Tags.WhoIs:
Value<WhoIsWrapper>.Save(sink, (WhoIsWrapper)value);
break;
case Tags.UtcTimeSynchronization:
Value<UtcTimeSynchronizationWrapper>.Save(sink, (UtcTimeSynchronizationWrapper)value);
break;
default:
throw new Exception();
}
sink.LeaveChoice();
}