import 'package:servicestack/servicestack.dart';
class RegisterDocumentResponse implements IConvertible
{
bool? IsSucces;
String? DocumentId;
List<String>? ErrorMessages;
String? Ooxml;
/**
* Is it a corporate identity document?
*/
// @ApiMember(Description="Is it a corporate identity document?", IsRequired=true)
bool? IsCorporateIdentity;
Map<String,String?>? DocumentVariables;
RegisterDocumentResponse({this.IsSucces,this.DocumentId,this.ErrorMessages,this.Ooxml,this.IsCorporateIdentity,this.DocumentVariables});
RegisterDocumentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
IsSucces = json['IsSucces'];
DocumentId = json['DocumentId'];
ErrorMessages = JsonConverters.fromJson(json['ErrorMessages'],'List<String>',context!);
Ooxml = json['Ooxml'];
IsCorporateIdentity = json['IsCorporateIdentity'];
DocumentVariables = JsonConverters.fromJson(json['DocumentVariables'],'Map<String,String?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'IsSucces': IsSucces,
'DocumentId': DocumentId,
'ErrorMessages': JsonConverters.toJson(ErrorMessages,'List<String>',context!),
'Ooxml': Ooxml,
'IsCorporateIdentity': IsCorporateIdentity,
'DocumentVariables': JsonConverters.toJson(DocumentVariables,'Map<String,String?>',context!)
};
getTypeName() => "RegisterDocumentResponse";
TypeContext? context = _ctx;
}
class RegistrationValue implements IConvertible
{
String? Key;
String? Value;
String? ShadowValue;
RegistrationValue({this.Key,this.Value,this.ShadowValue});
RegistrationValue.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Value = json['Value'];
ShadowValue = json['ShadowValue'];
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Value': Value,
'ShadowValue': ShadowValue
};
getTypeName() => "RegistrationValue";
TypeContext? context = _ctx;
}
class Transition implements IConvertible
{
String? ID;
String? Reason;
DateTime? DelayDate;
String? DelayReason;
List<int>? UserIDs;
List<int>? GroupIDs;
Transition({this.ID,this.Reason,this.DelayDate,this.DelayReason,this.UserIDs,this.GroupIDs});
Transition.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Reason = json['Reason'];
DelayDate = JsonConverters.fromJson(json['DelayDate'],'DateTime',context!);
DelayReason = json['DelayReason'];
UserIDs = JsonConverters.fromJson(json['UserIDs'],'List<int>',context!);
GroupIDs = JsonConverters.fromJson(json['GroupIDs'],'List<int>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Reason': Reason,
'DelayDate': JsonConverters.toJson(DelayDate,'DateTime',context!),
'DelayReason': DelayReason,
'UserIDs': JsonConverters.toJson(UserIDs,'List<int>',context!),
'GroupIDs': JsonConverters.toJson(GroupIDs,'List<int>',context!)
};
getTypeName() => "Transition";
TypeContext? context = _ctx;
}
class Process implements IConvertible
{
int? ID;
String? Title;
String? Description;
String? Note;
String? Coordinator;
bool? Urgent;
List<Transition>? Transitions;
Process({this.ID,this.Title,this.Description,this.Note,this.Coordinator,this.Urgent,this.Transitions});
Process.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Title = json['Title'];
Description = json['Description'];
Note = json['Note'];
Coordinator = json['Coordinator'];
Urgent = json['Urgent'];
Transitions = JsonConverters.fromJson(json['Transitions'],'List<Transition>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Title': Title,
'Description': Description,
'Note': Note,
'Coordinator': Coordinator,
'Urgent': Urgent,
'Transitions': JsonConverters.toJson(Transitions,'List<Transition>',context!)
};
getTypeName() => "Process";
TypeContext? context = _ctx;
}
class RegisterDocument implements IConvertible
{
String? RegistrationProfileID;
List<RegistrationValue>? Values;
List<Process>? Processes;
String? DocumentUploadId;
String? DocumentId;
String? StandardDocumentID;
bool? HasUnsavedChangesInDocument;
bool? IsOpenedFromNonDMSLocation;
RegisterDocument({this.RegistrationProfileID,this.Values,this.Processes,this.DocumentUploadId,this.DocumentId,this.StandardDocumentID,this.HasUnsavedChangesInDocument,this.IsOpenedFromNonDMSLocation});
RegisterDocument.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RegistrationProfileID = json['RegistrationProfileID'];
Values = JsonConverters.fromJson(json['Values'],'List<RegistrationValue>',context!);
Processes = JsonConverters.fromJson(json['Processes'],'List<Process>',context!);
DocumentUploadId = json['DocumentUploadId'];
DocumentId = json['DocumentId'];
StandardDocumentID = json['StandardDocumentID'];
HasUnsavedChangesInDocument = json['HasUnsavedChangesInDocument'];
IsOpenedFromNonDMSLocation = json['IsOpenedFromNonDMSLocation'];
return this;
}
Map<String, dynamic> toJson() => {
'RegistrationProfileID': RegistrationProfileID,
'Values': JsonConverters.toJson(Values,'List<RegistrationValue>',context!),
'Processes': JsonConverters.toJson(Processes,'List<Process>',context!),
'DocumentUploadId': DocumentUploadId,
'DocumentId': DocumentId,
'StandardDocumentID': StandardDocumentID,
'HasUnsavedChangesInDocument': HasUnsavedChangesInDocument,
'IsOpenedFromNonDMSLocation': IsOpenedFromNonDMSLocation
};
getTypeName() => "RegisterDocument";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'digiofficeapigateway.deltares.nl', types: <String, TypeInfo> {
'RegisterDocumentResponse': TypeInfo(TypeOf.Class, create:() => RegisterDocumentResponse()),
'Map<String,String?>': TypeInfo(TypeOf.Class, create:() => Map<String,String?>()),
'RegistrationValue': TypeInfo(TypeOf.Class, create:() => RegistrationValue()),
'Transition': TypeInfo(TypeOf.Class, create:() => Transition()),
'Process': TypeInfo(TypeOf.Class, create:() => Process()),
'List<Transition>': TypeInfo(TypeOf.Class, create:() => <Transition>[]),
'RegisterDocument': TypeInfo(TypeOf.Class, create:() => RegisterDocument()),
'List<RegistrationValue>': TypeInfo(TypeOf.Class, create:() => <RegistrationValue>[]),
'List<Process>': TypeInfo(TypeOf.Class, create:() => <Process>[]),
});
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/RegisterDocument HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<RegisterDocument xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations">
<DocumentId>00000000-0000-0000-0000-000000000000</DocumentId>
<DocumentUploadId>String</DocumentUploadId>
<HasUnsavedChangesInDocument>false</HasUnsavedChangesInDocument>
<IsOpenedFromNonDMSLocation>false</IsOpenedFromNonDMSLocation>
<Processes xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Workflow">
<d2p1:Process>
<d2p1:Coordinator>String</d2p1:Coordinator>
<d2p1:Description>String</d2p1:Description>
<d2p1:ID>0</d2p1:ID>
<d2p1:Note>String</d2p1:Note>
<d2p1:Title>String</d2p1:Title>
<d2p1:Transitions>
<d2p1:Transition>
<d2p1:DelayDate>0001-01-01T00:00:00</d2p1:DelayDate>
<d2p1:DelayReason>String</d2p1:DelayReason>
<d2p1:GroupIDs xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d6p1:int>0</d6p1:int>
</d2p1:GroupIDs>
<d2p1:ID>00000000-0000-0000-0000-000000000000</d2p1:ID>
<d2p1:Reason>String</d2p1:Reason>
<d2p1:UserIDs xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d6p1:int>0</d6p1:int>
</d2p1:UserIDs>
</d2p1:Transition>
</d2p1:Transitions>
<d2p1:Urgent>false</d2p1:Urgent>
</d2p1:Process>
</Processes>
<RegistrationProfileID>00000000-0000-0000-0000-000000000000</RegistrationProfileID>
<StandardDocumentID>00000000-0000-0000-0000-000000000000</StandardDocumentID>
<Values xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Registrationprofile">
<d2p1:RegistrationValue>
<d2p1:Key>00000000-0000-0000-0000-000000000000</d2p1:Key>
<d2p1:ShadowValue>String</d2p1:ShadowValue>
<d2p1:Value>String</d2p1:Value>
</d2p1:RegistrationValue>
</Values>
</RegisterDocument>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <RegisterDocumentResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations"> <DocumentId>00000000-0000-0000-0000-000000000000</DocumentId> <DocumentVariables xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true" /> <ErrorMessages xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:string>String</d2p1:string> </ErrorMessages> <IsCorporateIdentity>false</IsCorporateIdentity> <IsSucces>false</IsSucces> <Ooxml>String</Ooxml> </RegisterDocumentResponse>