/* Options:
Date: 2025-06-25 00:34:00
Version: 6.90
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: http://webservices.mbukdatabase.co.uk/AddressLookup
//GlobalNamespace:
//AddServiceStackTypes: True
//AddResponseStatus: False
//AddImplicitVersion:
//AddDescriptionAsComments: True
IncludeTypes: AddressRequest.*
//ExcludeTypes:
//DefaultImports: package:servicestack/servicestack.dart
*/
import 'package:servicestack/servicestack.dart';
// @DataContract(Name="LookupResult", Namespace="http://schemas.datacontract.org/2004/07/PostcodeLookupService")
class LookupResult implements IConvertible
{
// @DataMember
List
? Addresses;
// @DataMember
String? errormsg;
LookupResult({this.Addresses,this.errormsg});
LookupResult.fromJson(Map json) { fromMap(json); }
fromMap(Map json) {
Addresses = JsonConverters.fromJson(json['Addresses'],'List',context!);
errormsg = json['errormsg'];
return this;
}
Map toJson() => {
'Addresses': JsonConverters.toJson(Addresses,'List',context!),
'errormsg': errormsg
};
getTypeName() => "LookupResult";
TypeContext? context = _ctx;
}
// @Route("/2.0/address/{Postcode}", "GET")
// @Route("/2.0/address/{Postcode}/{HouseNo}", "GET")
class AddressRequest implements IReturn, IHasVersion, IConvertible, IGet
{
int? Version;
/**
* Using a Postcode to return addresses.
*/
// @ApiMember(DataType="string", Description="Using a Postcode to return addresses.", IsRequired=true, Name="Postcode", ParameterType="path")
String? Postcode;
/**
* Optional input value to limit the return data to a specific address.
*/
// @ApiMember(DataType="string", Description="Optional input value to limit the return data to a specific address.", Name="House Name or Number", ParameterType="path")
String? HouseNo;
AddressRequest({this.Version,this.Postcode,this.HouseNo});
AddressRequest.fromJson(Map json) { fromMap(json); }
fromMap(Map json) {
Version = json['Version'];
Postcode = json['Postcode'];
HouseNo = json['HouseNo'];
return this;
}
Map toJson() => {
'Version': Version,
'Postcode': Postcode,
'HouseNo': HouseNo
};
createResponse() => LookupResult();
getResponseTypeName() => "LookupResult";
getTypeName() => "AddressRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'webservices.mbukdatabase.co.uk', types: {
'LookupResult': TypeInfo(TypeOf.Class, create:() => LookupResult()),
'List': TypeInfo(TypeOf.Class, create:() => []),
'Address': TypeInfo(TypeOf.Class, create:() => Address()),
'AddressRequest': TypeInfo(TypeOf.Class, create:() => AddressRequest()),
});