import 'package:servicestack/servicestack.dart';
class AlbumResult implements IConvertible
{
int? id;
String? name;
String? slug;
String? albumRef;
String? ownerRef;
int? primaryArtifactId;
int? score;
List<int>? artifactIds = [];
AlbumResult({this.id,this.name,this.slug,this.albumRef,this.ownerRef,this.primaryArtifactId,this.score,this.artifactIds});
AlbumResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
slug = json['slug'];
albumRef = json['albumRef'];
ownerRef = json['ownerRef'];
primaryArtifactId = json['primaryArtifactId'];
score = json['score'];
artifactIds = JsonConverters.fromJson(json['artifactIds'],'List<int>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'name': name,
'slug': slug,
'albumRef': albumRef,
'ownerRef': ownerRef,
'primaryArtifactId': primaryArtifactId,
'score': score,
'artifactIds': JsonConverters.toJson(artifactIds,'List<int>',context!)
};
getTypeName() => "AlbumResult";
TypeContext? context = _ctx;
}
class GetAlbumResultsResponse implements IConvertible
{
List<AlbumResult>? results = [];
GetAlbumResultsResponse({this.results});
GetAlbumResultsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
results = JsonConverters.fromJson(json['results'],'List<AlbumResult>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'results': JsonConverters.toJson(results,'List<AlbumResult>',context!)
};
getTypeName() => "GetAlbumResultsResponse";
TypeContext? context = _ctx;
}
class GetAlbumResults implements IConvertible
{
List<int>? ids;
List<String>? refIds;
GetAlbumResults({this.ids,this.refIds});
GetAlbumResults.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ids = JsonConverters.fromJson(json['ids'],'List<int>',context!);
refIds = JsonConverters.fromJson(json['refIds'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ids': JsonConverters.toJson(ids,'List<int>',context!),
'refIds': JsonConverters.toJson(refIds,'List<String>',context!)
};
getTypeName() => "GetAlbumResults";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'blazordiffusion.com', types: <String, TypeInfo> {
'AlbumResult': TypeInfo(TypeOf.Class, create:() => AlbumResult()),
'GetAlbumResultsResponse': TypeInfo(TypeOf.Class, create:() => GetAlbumResultsResponse()),
'List<AlbumResult>': TypeInfo(TypeOf.Class, create:() => <AlbumResult>[]),
'GetAlbumResults': TypeInfo(TypeOf.Class, create:() => GetAlbumResults()),
});
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/GetAlbumResults HTTP/1.1
Host: blazordiffusion.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetAlbumResults xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel">
<Ids xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:int>0</d2p1:int>
</Ids>
<RefIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RefIds>
</GetAlbumResults>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <GetAlbumResultsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel"> <Results> <AlbumResult> <AlbumRef>String</AlbumRef> <ArtifactIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:int>0</d4p1:int> </ArtifactIds> <Id>0</Id> <Name>String</Name> <OwnerRef>String</OwnerRef> <PrimaryArtifactId>0</PrimaryArtifactId> <Score>0</Score> <Slug>String</Slug> </AlbumResult> </Results> </GetAlbumResultsResponse>