import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class JsonDto implements IConvertible
{
JsonDto();
JsonDto.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "JsonDto";
TypeContext? context = _ctx;
}
class GetJsonTemplateRequest extends JsonDto implements IConvertible
{
String? Guid;
GetJsonTemplateRequest({this.Guid});
GetJsonTemplateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Guid = json['Guid'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Guid': Guid
});
getTypeName() => "GetJsonTemplateRequest";
TypeContext? context = _ctx;
}
class JsonScanSettings implements IConvertible
{
String? ScanType;
bool? ScanTypeLocked;
String? ScanColour;
bool? ScanColourLocked;
String? ScanResolution;
bool? ScanResolutionLocked;
String? ScanSide;
bool? ScanSideLocked;
String? ScanSize;
bool? ScanSizeLocked;
String? ScanOrientation;
bool? ScanOrientationLocked;
String? ScanSource;
bool? ScanSourceLocked;
bool? ScanContinuously;
bool? ScanContinuouslyLocked;
bool? IsMixedSizes;
bool? IsMixedSizesLocked;
int? MinimumPageCount;
int? MaximumPageCount;
JsonScanSettings({this.ScanType,this.ScanTypeLocked,this.ScanColour,this.ScanColourLocked,this.ScanResolution,this.ScanResolutionLocked,this.ScanSide,this.ScanSideLocked,this.ScanSize,this.ScanSizeLocked,this.ScanOrientation,this.ScanOrientationLocked,this.ScanSource,this.ScanSourceLocked,this.ScanContinuously,this.ScanContinuouslyLocked,this.IsMixedSizes,this.IsMixedSizesLocked,this.MinimumPageCount,this.MaximumPageCount});
JsonScanSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ScanType = json['ScanType'];
ScanTypeLocked = json['ScanTypeLocked'];
ScanColour = json['ScanColour'];
ScanColourLocked = json['ScanColourLocked'];
ScanResolution = json['ScanResolution'];
ScanResolutionLocked = json['ScanResolutionLocked'];
ScanSide = json['ScanSide'];
ScanSideLocked = json['ScanSideLocked'];
ScanSize = json['ScanSize'];
ScanSizeLocked = json['ScanSizeLocked'];
ScanOrientation = json['ScanOrientation'];
ScanOrientationLocked = json['ScanOrientationLocked'];
ScanSource = json['ScanSource'];
ScanSourceLocked = json['ScanSourceLocked'];
ScanContinuously = json['ScanContinuously'];
ScanContinuouslyLocked = json['ScanContinuouslyLocked'];
IsMixedSizes = json['IsMixedSizes'];
IsMixedSizesLocked = json['IsMixedSizesLocked'];
MinimumPageCount = json['MinimumPageCount'];
MaximumPageCount = json['MaximumPageCount'];
return this;
}
Map<String, dynamic> toJson() => {
'ScanType': ScanType,
'ScanTypeLocked': ScanTypeLocked,
'ScanColour': ScanColour,
'ScanColourLocked': ScanColourLocked,
'ScanResolution': ScanResolution,
'ScanResolutionLocked': ScanResolutionLocked,
'ScanSide': ScanSide,
'ScanSideLocked': ScanSideLocked,
'ScanSize': ScanSize,
'ScanSizeLocked': ScanSizeLocked,
'ScanOrientation': ScanOrientation,
'ScanOrientationLocked': ScanOrientationLocked,
'ScanSource': ScanSource,
'ScanSourceLocked': ScanSourceLocked,
'ScanContinuously': ScanContinuously,
'ScanContinuouslyLocked': ScanContinuouslyLocked,
'IsMixedSizes': IsMixedSizes,
'IsMixedSizesLocked': IsMixedSizesLocked,
'MinimumPageCount': MinimumPageCount,
'MaximumPageCount': MaximumPageCount
};
getTypeName() => "JsonScanSettings";
TypeContext? context = _ctx;
}
class JsonTemplate implements IConvertible
{
String? Name;
String? Description;
String? Guid;
DateTime? TemplateModificationDate;
DateTime? IconModificationDate;
Uint8List? Icon;
List<JsonQuestion>? TemplateQuestions;
List<JsonQuestion>? GlobalQuestions;
JsonScanSettings? ScanSettings;
JsonTemplate({this.Name,this.Description,this.Guid,this.TemplateModificationDate,this.IconModificationDate,this.Icon,this.TemplateQuestions,this.GlobalQuestions,this.ScanSettings});
JsonTemplate.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Description = json['Description'];
Guid = json['Guid'];
TemplateModificationDate = JsonConverters.fromJson(json['TemplateModificationDate'],'DateTime',context!);
IconModificationDate = JsonConverters.fromJson(json['IconModificationDate'],'DateTime',context!);
Icon = JsonConverters.fromJson(json['Icon'],'Uint8List',context!);
TemplateQuestions = JsonConverters.fromJson(json['TemplateQuestions'],'List<JsonQuestion>',context!);
GlobalQuestions = JsonConverters.fromJson(json['GlobalQuestions'],'List<JsonQuestion>',context!);
ScanSettings = JsonConverters.fromJson(json['ScanSettings'],'JsonScanSettings',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Description': Description,
'Guid': Guid,
'TemplateModificationDate': JsonConverters.toJson(TemplateModificationDate,'DateTime',context!),
'IconModificationDate': JsonConverters.toJson(IconModificationDate,'DateTime',context!),
'Icon': JsonConverters.toJson(Icon,'Uint8List',context!),
'TemplateQuestions': JsonConverters.toJson(TemplateQuestions,'List<JsonQuestion>',context!),
'GlobalQuestions': JsonConverters.toJson(GlobalQuestions,'List<JsonQuestion>',context!),
'ScanSettings': JsonConverters.toJson(ScanSettings,'JsonScanSettings',context!)
};
getTypeName() => "JsonTemplate";
TypeContext? context = _ctx;
}
class GetJsonTemplateResponse extends JsonDto implements IConvertible
{
JsonTemplate? Template;
GetJsonTemplateResponse({this.Template});
GetJsonTemplateResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Template = JsonConverters.fromJson(json['Template'],'JsonTemplate',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Template': JsonConverters.toJson(Template,'JsonTemplate',context!)
});
getTypeName() => "GetJsonTemplateResponse";
TypeContext? context = _ctx;
}
enum QuestionType
{
Edit,
List,
EditList,
Browse,
Password,
Date,
Time,
Boolean,
Integer,
Double,
BrowseList,
}
class JsonQuestion implements IConvertible
{
QuestionType? PlQuestionType;
String? Question;
String? TagName;
String? Default;
String? ToolTip;
String? SampleValue;
String? Regex;
int? Minimum;
int? Maximum;
bool? Required;
bool? Dynamic;
String? PicklistGuid;
String? TemplateGuid;
bool? HideDefaultValue;
JsonQuestion({this.PlQuestionType,this.Question,this.TagName,this.Default,this.ToolTip,this.SampleValue,this.Regex,this.Minimum,this.Maximum,this.Required,this.Dynamic,this.PicklistGuid,this.TemplateGuid,this.HideDefaultValue});
JsonQuestion.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PlQuestionType = JsonConverters.fromJson(json['PlQuestionType'],'QuestionType',context!);
Question = json['Question'];
TagName = json['TagName'];
Default = json['Default'];
ToolTip = json['ToolTip'];
SampleValue = json['SampleValue'];
Regex = json['Regex'];
Minimum = json['Minimum'];
Maximum = json['Maximum'];
Required = json['Required'];
Dynamic = json['Dynamic'];
PicklistGuid = json['PicklistGuid'];
TemplateGuid = json['TemplateGuid'];
HideDefaultValue = json['HideDefaultValue'];
return this;
}
Map<String, dynamic> toJson() => {
'PlQuestionType': JsonConverters.toJson(PlQuestionType,'QuestionType',context!),
'Question': Question,
'TagName': TagName,
'Default': Default,
'ToolTip': ToolTip,
'SampleValue': SampleValue,
'Regex': Regex,
'Minimum': Minimum,
'Maximum': Maximum,
'Required': Required,
'Dynamic': Dynamic,
'PicklistGuid': PicklistGuid,
'TemplateGuid': TemplateGuid,
'HideDefaultValue': HideDefaultValue
};
getTypeName() => "JsonQuestion";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'buildmax.org', types: <String, TypeInfo> {
'JsonDto': TypeInfo(TypeOf.Class, create:() => JsonDto()),
'GetJsonTemplateRequest': TypeInfo(TypeOf.Class, create:() => GetJsonTemplateRequest()),
'JsonScanSettings': TypeInfo(TypeOf.Class, create:() => JsonScanSettings()),
'JsonTemplate': TypeInfo(TypeOf.Class, create:() => JsonTemplate()),
'Uint8List': TypeInfo(TypeOf.Class, create:() => Uint8List(0)),
'List<JsonQuestion>': TypeInfo(TypeOf.Class, create:() => <JsonQuestion>[]),
'JsonQuestion': TypeInfo(TypeOf.Class, create:() => JsonQuestion()),
'GetJsonTemplateResponse': TypeInfo(TypeOf.Class, create:() => GetJsonTemplateResponse()),
'QuestionType': TypeInfo(TypeOf.Enum, enumValues:QuestionType.values),
});
Dart GetJsonTemplateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsonl/reply/GetJsonTemplateRequest HTTP/1.1
Host: buildmax.org
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Guid":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{Unable to show example output for type 'GetJsonTemplateResponse' using the custom 'other' filter}No parameterless constructor defined for this object.