| POST | /{Workspace}/IntegrationDataTableDDL |
|---|
import 'package:servicestack/servicestack.dart';
class MetadataItem implements IConvertible
{
String? Name;
String? Datatype;
String? Length;
String? Label;
MetadataItem({this.Name,this.Datatype,this.Length,this.Label});
MetadataItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Datatype = json['Datatype'];
Length = json['Length'];
Label = json['Label'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Datatype': Datatype,
'Length': Length,
'Label': Label
};
getTypeName() => "MetadataItem";
TypeContext? context = _ctx;
}
class IntegrationDataTable implements IConvertible
{
String? Name;
List<MetadataItem>? Columns;
List<List<String>>? Rows;
IntegrationDataTable({this.Name,this.Columns,this.Rows});
IntegrationDataTable.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Columns = JsonConverters.fromJson(json['Columns'],'List<MetadataItem>',context!);
Rows = JsonConverters.fromJson(json['Rows'],'List<List<String>>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Columns': JsonConverters.toJson(Columns,'List<MetadataItem>',context!),
'Rows': JsonConverters.toJson(Rows,'List<List<String>>',context!)
};
getTypeName() => "IntegrationDataTable";
TypeContext? context = _ctx;
}
/**
* Generates the database DDL for a given integration data table. Database types supported: SQLServer
*/
class IntegrationDataTableDDL implements IConvertible
{
String? Workspace;
String? DatabaseType;
IntegrationDataTable? DataTable;
String? DDL;
IntegrationDataTableDDL({this.Workspace,this.DatabaseType,this.DataTable,this.DDL});
IntegrationDataTableDDL.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
DatabaseType = json['DatabaseType'];
DataTable = JsonConverters.fromJson(json['DataTable'],'IntegrationDataTable',context!);
DDL = json['DDL'];
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'DatabaseType': DatabaseType,
'DataTable': JsonConverters.toJson(DataTable,'IntegrationDataTable',context!),
'DDL': DDL
};
getTypeName() => "IntegrationDataTableDDL";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev.fieldsquared.com', types: <String, TypeInfo> {
'MetadataItem': TypeInfo(TypeOf.Class, create:() => MetadataItem()),
'IntegrationDataTable': TypeInfo(TypeOf.Class, create:() => IntegrationDataTable()),
'List<MetadataItem>': TypeInfo(TypeOf.Class, create:() => <MetadataItem>[]),
'List<List<String>>': TypeInfo(TypeOf.Class, create:() => <List<String>>[]),
'IntegrationDataTableDDL': TypeInfo(TypeOf.Class, create:() => IntegrationDataTableDDL()),
});
Dart IntegrationDataTableDDL DTOs
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 /{Workspace}/IntegrationDataTableDDL HTTP/1.1
Host: dev.fieldsquared.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<IntegrationDataTableDDL xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Field2Office.API.Model.Integration">
<DDL>String</DDL>
<DataTable xmlns:d2p1="http://schemas.datacontract.org/2004/07/Field2Office.DomainObjects.Model">
<d2p1:Columns xmlns:d3p1="http://schemas.datacontract.org/2004/07/Field2Office.DomainObjects.Model.Rules">
<d3p1:MetadataItem>
<d3p1:Datatype>String</d3p1:Datatype>
<d3p1:Length>String</d3p1:Length>
<d3p1:Name>String</d3p1:Name>
</d3p1:MetadataItem>
</d2p1:Columns>
<d2p1:Name>String</d2p1:Name>
<d2p1:Rows xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:ArrayOfstring>
<d3p1:string>String</d3p1:string>
</d3p1:ArrayOfstring>
</d2p1:Rows>
</DataTable>
<DatabaseType>String</DatabaseType>
<Workspace>String</Workspace>
</IntegrationDataTableDDL>