Beispiel #1
0
    public async Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken)
    {
        oprot.IncrementRecursionDepth();
        try
        {
            var struc = new TStruct("Album");
            await oprot.WriteStructBeginAsync(struc, cancellationToken);

            var field = new TField();
            field.Name = "idAlbum";
            field.Type = TType.I16;
            field.ID   = 1;
            await oprot.WriteFieldBeginAsync(field, cancellationToken);

            await oprot.WriteI16Async(IdAlbum, cancellationToken);

            await oprot.WriteFieldEndAsync(cancellationToken);

            if (Title != null && __isset.title)
            {
                field.Name = "title";
                field.Type = TType.String;
                field.ID   = 2;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await oprot.WriteStringAsync(Title, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            if (CoverPath != null && __isset.coverPath)
            {
                field.Name = "coverPath";
                field.Type = TType.String;
                field.ID   = 3;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await oprot.WriteStringAsync(CoverPath, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            if (ReleaseDate != null && __isset.releaseDate)
            {
                field.Name = "releaseDate";
                field.Type = TType.Struct;
                field.ID   = 4;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await ReleaseDate.WriteAsync(oprot, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            if (__isset.gender)
            {
                field.Name = "gender";
                field.Type = TType.I32;
                field.ID   = 5;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await oprot.WriteI32Async((int)Gender, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            if (__isset.isSingle)
            {
                field.Name = "isSingle";
                field.Type = TType.Bool;
                field.ID   = 6;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await oprot.WriteBoolAsync(IsSingle, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            await oprot.WriteFieldStopAsync(cancellationToken);

            await oprot.WriteStructEndAsync(cancellationToken);
        }
        finally
        {
            oprot.DecrementRecursionDepth();
        }
    }