import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class AddBlobFileResponse implements IConvertible
{
    String? BlobFileID;
    AddBlobFileResponse({this.BlobFileID});
    AddBlobFileResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
    fromMap(Map<String, dynamic> json) {
        BlobFileID = json['BlobFileID'];
        return this;
    }
    Map<String, dynamic> toJson() => {
        'BlobFileID': BlobFileID
    };
    getTypeName() => "AddBlobFileResponse";
    TypeContext? context = _ctx;
}
// @DataContract
class AddBlobFile implements IConvertible
{
    // @DataMember
    String? FileName;
    // @DataMember
    String? Type;
    // @DataMember
    Uint8List? Image;
    // @DataMember
    String? ExternalID;
    AddBlobFile({this.FileName,this.Type,this.Image,this.ExternalID});
    AddBlobFile.fromJson(Map<String, dynamic> json) { fromMap(json); }
    fromMap(Map<String, dynamic> json) {
        FileName = json['FileName'];
        Type = json['Type'];
        Image = JsonConverters.fromJson(json['Image'],'Uint8List',context!);
        ExternalID = json['ExternalID'];
        return this;
    }
    Map<String, dynamic> toJson() => {
        'FileName': FileName,
        'Type': Type,
        'Image': JsonConverters.toJson(Image,'Uint8List',context!),
        'ExternalID': ExternalID
    };
    getTypeName() => "AddBlobFile";
    TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'doapigw.baasbv.nl', types: <String, TypeInfo> {
    'AddBlobFileResponse': TypeInfo(TypeOf.Class, create:() => AddBlobFileResponse()),
    'AddBlobFile': TypeInfo(TypeOf.Class, create:() => AddBlobFile()),
    'Uint8List': TypeInfo(TypeOf.Class, create:() => Uint8List(0)),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/AddBlobFile HTTP/1.1 
Host: doapigw.baasbv.nl 
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<AddBlobFile xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations">
  <ExternalID>String</ExternalID>
  <FileName>String</FileName>
  <Image>AA==</Image>
  <Type>String</Type>
</AddBlobFile>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AddBlobFileResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations"> <BlobFileID>00000000-0000-0000-0000-000000000000</BlobFileID> </AddBlobFileResponse>