POST | /config/update |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class Entity implements IEntity, IConvertible
{
String? id;
Entity({this.id});
Entity.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id
};
getTypeName() => "Entity";
TypeContext? context = _ctx;
}
class Country implements IConvertible
{
String? name;
Map<String,String?>? languages;
Country({this.name,this.languages});
Country.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
name = json['name'];
languages = JsonConverters.toStringMap(json['languages']);
return this;
}
Map<String, dynamic> toJson() => {
'name': name,
'languages': languages
};
getTypeName() => "Country";
TypeContext? context = _ctx;
}
class ListItem extends Entity implements IConvertible
{
String? listId;
String? country;
String? relatedId;
String? code;
String? custom;
ListItem({this.listId,this.country,this.relatedId,this.code,this.custom});
ListItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
listId = json['listId'];
country = json['country'];
relatedId = json['relatedId'];
code = json['code'];
custom = json['custom'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'listId': listId,
'country': country,
'relatedId': relatedId,
'code': code,
'custom': custom
});
getTypeName() => "ListItem";
TypeContext? context = _ctx;
}
class SiteSection implements IConvertible
{
String? route;
bool? public;
String? parent;
int? roles;
List<String>? hideFrom;
int? order;
SiteSection({this.route,this.public,this.parent,this.roles,this.hideFrom,this.order});
SiteSection.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
route = json['route'];
public = json['public'];
parent = json['parent'];
roles = json['roles'];
hideFrom = JsonConverters.fromJson(json['hideFrom'],'List<String>',context!);
order = json['order'];
return this;
}
Map<String, dynamic> toJson() => {
'route': route,
'public': public,
'parent': parent,
'roles': roles,
'hideFrom': JsonConverters.toJson(hideFrom,'List<String>',context!),
'order': order
};
getTypeName() => "SiteSection";
TypeContext? context = _ctx;
}
class Configuration extends Entity implements IConvertible
{
String? category;
Map<String,Country?>? countries;
List<ListItem>? listItems;
Map<String,String?>? listRelationships;
Map<String,List<String>?>? sectionElements;
Map<String,SiteSection?>? siteStructure;
int? version;
String? createdBy;
DateTime? dateCreated;
String? updatedBy;
DateTime? dateUpdated;
Configuration({this.category,this.countries,this.listItems,this.listRelationships,this.sectionElements,this.siteStructure,this.version,this.createdBy,this.dateCreated,this.updatedBy,this.dateUpdated});
Configuration.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
category = json['category'];
countries = JsonConverters.fromJson(json['countries'],'Map<String,Country?>',context!);
listItems = JsonConverters.fromJson(json['listItems'],'List<ListItem>',context!);
listRelationships = JsonConverters.toStringMap(json['listRelationships']);
sectionElements = JsonConverters.fromJson(json['sectionElements'],'Map<String,List<String>?>',context!);
siteStructure = JsonConverters.fromJson(json['siteStructure'],'Map<String,SiteSection?>',context!);
version = json['version'];
createdBy = json['createdBy'];
dateCreated = JsonConverters.fromJson(json['dateCreated'],'DateTime',context!);
updatedBy = json['updatedBy'];
dateUpdated = JsonConverters.fromJson(json['dateUpdated'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'category': category,
'countries': JsonConverters.toJson(countries,'Map<String,Country?>',context!),
'listItems': JsonConverters.toJson(listItems,'List<ListItem>',context!),
'listRelationships': listRelationships,
'sectionElements': JsonConverters.toJson(sectionElements,'Map<String,List<String>?>',context!),
'siteStructure': JsonConverters.toJson(siteStructure,'Map<String,SiteSection?>',context!),
'version': version,
'createdBy': createdBy,
'dateCreated': JsonConverters.toJson(dateCreated,'DateTime',context!),
'updatedBy': updatedBy,
'dateUpdated': JsonConverters.toJson(dateUpdated,'DateTime',context!)
});
getTypeName() => "Configuration";
TypeContext? context = _ctx;
}
class UpdateConfigReq implements IConvertible
{
String? category;
Map<String,Country?>? countries;
List<ListItem>? listItems;
Map<String,String?>? listRelationships;
Map<String,List<String>?>? sectionElements;
Map<String,SiteSection?>? siteStructure;
UpdateConfigReq({this.category,this.countries,this.listItems,this.listRelationships,this.sectionElements,this.siteStructure});
UpdateConfigReq.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
category = json['category'];
countries = JsonConverters.fromJson(json['countries'],'Map<String,Country?>',context!);
listItems = JsonConverters.fromJson(json['listItems'],'List<ListItem>',context!);
listRelationships = JsonConverters.toStringMap(json['listRelationships']);
sectionElements = JsonConverters.fromJson(json['sectionElements'],'Map<String,List<String>?>',context!);
siteStructure = JsonConverters.fromJson(json['siteStructure'],'Map<String,SiteSection?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'category': category,
'countries': JsonConverters.toJson(countries,'Map<String,Country?>',context!),
'listItems': JsonConverters.toJson(listItems,'List<ListItem>',context!),
'listRelationships': listRelationships,
'sectionElements': JsonConverters.toJson(sectionElements,'Map<String,List<String>?>',context!),
'siteStructure': JsonConverters.toJson(siteStructure,'Map<String,SiteSection?>',context!)
};
getTypeName() => "UpdateConfigReq";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'hcbtas_q_albamfs_api.azurewebsites.net', types: <String, TypeInfo> {
'Entity': TypeInfo(TypeOf.Class, create:() => Entity()),
'Country': TypeInfo(TypeOf.Class, create:() => Country()),
'ListItem': TypeInfo(TypeOf.Class, create:() => ListItem()),
'SiteSection': TypeInfo(TypeOf.Class, create:() => SiteSection()),
'Configuration': TypeInfo(TypeOf.Class, create:() => Configuration()),
'Map<String,Country?>': TypeInfo(TypeOf.Class, create:() => Map<String,Country?>()),
'List<ListItem>': TypeInfo(TypeOf.Class, create:() => <ListItem>[]),
'Map<String,List<String>?>': TypeInfo(TypeOf.Class, create:() => Map<String,List<String>?>()),
'Map<String,SiteSection?>': TypeInfo(TypeOf.Class, create:() => Map<String,SiteSection?>()),
'UpdateConfigReq': TypeInfo(TypeOf.Class, create:() => UpdateConfigReq()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /config/update HTTP/1.1
Host: hcbtas-q-albamfs-api.azurewebsites.net
Accept: application/json
Content-Type: application/json
Content-Length: length
{"category":"String","countries":{"String":{"name":"String","languages":{"String":"String"}}},"listItems":[{"listId":"String","country":"String","relatedId":"String","code":"String","custom":"String","id":"String"}],"listRelationships":{"String":"String"},"sectionElements":{"String":["String"]},"siteStructure":{"String":{"route":"String","public":false,"parent":"String","roles":0,"hideFrom":["String"],"order":0}}}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"category":"String","countries":{"String":{"name":"String","languages":{"String":"String"}}},"listItems":[{"listId":"String","country":"String","relatedId":"String","code":"String","custom":"String","id":"String"}],"listRelationships":{"String":"String"},"sectionElements":{"String":["String"]},"siteStructure":{"String":{"route":"String","public":false,"parent":"String","roles":0,"hideFrom":["String"],"order":0}},"version":0,"createdBy":"String","dateCreated":"0001-01-01T00:00:00.0000000","updatedBy":"String","dateUpdated":"0001-01-01T00:00:00.0000000","id":"String"}