import 'package:servicestack/servicestack.dart';
class RegistrationprofileInformation implements IConvertible
{
String? ID;
String? Name;
bool? WizardAutomatischDoorlopen;
RegistrationprofileInformation({this.ID,this.Name,this.WizardAutomatischDoorlopen});
RegistrationprofileInformation.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Name = json['Name'];
WizardAutomatischDoorlopen = json['WizardAutomatischDoorlopen'];
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Name': Name,
'WizardAutomatischDoorlopen': WizardAutomatischDoorlopen
};
getTypeName() => "RegistrationprofileInformation";
TypeContext? context = _ctx;
}
enum DragDropAction
{
CopyEmailIncludingAttachments,
CopyEmailIncludingAndSeparateAttachments,
CopyEmailExcludingAndSeparateAttachments,
CopyEmailExcludingAttachments,
CopyOnlyAttachments,
MoveEmailIncludingAttachments,
MoveEmailIncludingAndSeparateAttachments,
MoveEmailExcludingAndSeparateAttachments,
MoveEmailExcludingAttachments,
MoveOnlyAttachments,
Files,
FileStream,
}
class QuickRegistrationOptions implements IConvertible
{
String? ProgCode;
String? RegistrationProfileID;
List<RegistrationprofileInformation>? RegistrationProfiles;
String? AttachmentRegistrationProfileID;
List<RegistrationprofileInformation>? AttachmentProfiles;
String? RegistrationProfileNewEmailID;
String? EMailActie;
String? EMailActieNieuw;
String? EMailActieBeantwoorden;
String? EMailActieDoorsturen;
DragDropAction? DefaultDragDropAction;
String? RegistratieWizard365URL;
String? ApplicationName;
String? Extension;
bool? MenuTonenBijSlepen;
bool? AllowMultipleRegistrations;
int? MinimumAttachmentSize;
bool? AllowEmptyEmailInRegistrationprofileWizard;
QuickRegistrationOptions({this.ProgCode,this.RegistrationProfileID,this.RegistrationProfiles,this.AttachmentRegistrationProfileID,this.AttachmentProfiles,this.RegistrationProfileNewEmailID,this.EMailActie,this.EMailActieNieuw,this.EMailActieBeantwoorden,this.EMailActieDoorsturen,this.DefaultDragDropAction,this.RegistratieWizard365URL,this.ApplicationName,this.Extension,this.MenuTonenBijSlepen,this.AllowMultipleRegistrations,this.MinimumAttachmentSize,this.AllowEmptyEmailInRegistrationprofileWizard});
QuickRegistrationOptions.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProgCode = json['ProgCode'];
RegistrationProfileID = json['RegistrationProfileID'];
RegistrationProfiles = JsonConverters.fromJson(json['RegistrationProfiles'],'List<RegistrationprofileInformation>',context!);
AttachmentRegistrationProfileID = json['AttachmentRegistrationProfileID'];
AttachmentProfiles = JsonConverters.fromJson(json['AttachmentProfiles'],'List<RegistrationprofileInformation>',context!);
RegistrationProfileNewEmailID = json['RegistrationProfileNewEmailID'];
EMailActie = json['EMailActie'];
EMailActieNieuw = json['EMailActieNieuw'];
EMailActieBeantwoorden = json['EMailActieBeantwoorden'];
EMailActieDoorsturen = json['EMailActieDoorsturen'];
DefaultDragDropAction = JsonConverters.fromJson(json['DefaultDragDropAction'],'DragDropAction',context!);
RegistratieWizard365URL = json['RegistratieWizard365URL'];
ApplicationName = json['ApplicationName'];
Extension = json['Extension'];
MenuTonenBijSlepen = json['MenuTonenBijSlepen'];
AllowMultipleRegistrations = json['AllowMultipleRegistrations'];
MinimumAttachmentSize = json['MinimumAttachmentSize'];
AllowEmptyEmailInRegistrationprofileWizard = json['AllowEmptyEmailInRegistrationprofileWizard'];
return this;
}
Map<String, dynamic> toJson() => {
'ProgCode': ProgCode,
'RegistrationProfileID': RegistrationProfileID,
'RegistrationProfiles': JsonConverters.toJson(RegistrationProfiles,'List<RegistrationprofileInformation>',context!),
'AttachmentRegistrationProfileID': AttachmentRegistrationProfileID,
'AttachmentProfiles': JsonConverters.toJson(AttachmentProfiles,'List<RegistrationprofileInformation>',context!),
'RegistrationProfileNewEmailID': RegistrationProfileNewEmailID,
'EMailActie': EMailActie,
'EMailActieNieuw': EMailActieNieuw,
'EMailActieBeantwoorden': EMailActieBeantwoorden,
'EMailActieDoorsturen': EMailActieDoorsturen,
'DefaultDragDropAction': JsonConverters.toJson(DefaultDragDropAction,'DragDropAction',context!),
'RegistratieWizard365URL': RegistratieWizard365URL,
'ApplicationName': ApplicationName,
'Extension': Extension,
'MenuTonenBijSlepen': MenuTonenBijSlepen,
'AllowMultipleRegistrations': AllowMultipleRegistrations,
'MinimumAttachmentSize': MinimumAttachmentSize,
'AllowEmptyEmailInRegistrationprofileWizard': AllowEmptyEmailInRegistrationprofileWizard
};
getTypeName() => "QuickRegistrationOptions";
TypeContext? context = _ctx;
}
class GetQuickRegistrationOptions implements IConvertible
{
String? ProgCode;
String? ApplicationName;
String? Extension;
GetQuickRegistrationOptions({this.ProgCode,this.ApplicationName,this.Extension});
GetQuickRegistrationOptions.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProgCode = json['ProgCode'];
ApplicationName = json['ApplicationName'];
Extension = json['Extension'];
return this;
}
Map<String, dynamic> toJson() => {
'ProgCode': ProgCode,
'ApplicationName': ApplicationName,
'Extension': Extension
};
getTypeName() => "GetQuickRegistrationOptions";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'digiofficeapigateway.deltares.nl', types: <String, TypeInfo> {
'RegistrationprofileInformation': TypeInfo(TypeOf.Class, create:() => RegistrationprofileInformation()),
'DragDropAction': TypeInfo(TypeOf.Enum, enumValues:DragDropAction.values),
'QuickRegistrationOptions': TypeInfo(TypeOf.Class, create:() => QuickRegistrationOptions()),
'List<RegistrationprofileInformation>': TypeInfo(TypeOf.Class, create:() => <RegistrationprofileInformation>[]),
'GetQuickRegistrationOptions': TypeInfo(TypeOf.Class, create:() => GetQuickRegistrationOptions()),
});
Dart GetQuickRegistrationOptions DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/GetQuickRegistrationOptions HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProgCode: String,
ApplicationName: String,
Extension: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { ProgCode: String, RegistrationProfileID: 00000000-0000-0000-0000-000000000000, RegistrationProfiles: [ { ID: 00000000-0000-0000-0000-000000000000, Name: String, WizardAutomatischDoorlopen: False } ], AttachmentRegistrationProfileID: 00000000-0000-0000-0000-000000000000, AttachmentProfiles: [ { ID: 00000000-0000-0000-0000-000000000000, Name: String, WizardAutomatischDoorlopen: False } ], RegistrationProfileNewEmailID: 00000000-0000-0000-0000-000000000000, EMailActie: String, EMailActieNieuw: String, EMailActieBeantwoorden: String, EMailActieDoorsturen: String, DefaultDragDropAction: CopyEmailIncludingAttachments, RegistratieWizard365URL: String, ApplicationName: String, Extension: String, MenuTonenBijSlepen: False, AllowMultipleRegistrations: False, MinimumAttachmentSize: 0, AllowEmptyEmailInRegistrationprofileWizard: False }