3
3
import io .dataline .api .model .*;
4
4
import io .dataline .config .persistence .ConfigPersistence ;
5
5
import io .dataline .config .persistence .DefaultConfigPersistence ;
6
+ import io .dataline .server .handlers .*;
6
7
import io .dataline .server .handlers .SourceImplementationsHandler ;
7
8
import io .dataline .server .handlers .SourceSpecificationsHandler ;
8
9
import io .dataline .server .handlers .SourcesHandler ;
@@ -17,16 +18,24 @@ public class ConfigurationApi implements io.dataline.api.V1Api {
17
18
private final SourcesHandler sourcesHandler ;
18
19
private final SourceSpecificationsHandler sourceSpecificationsHandler ;
19
20
private final SourceImplementationsHandler sourceImplementationsHandler ;
21
+ private final DestinationsHandler destinationsHandler ;
22
+ private final DestinationSpecificationsHandler destinationSpecificationsHandler ;
23
+ private final DestinationImplementationsHandler destinationImplementationsHandler ;
20
24
21
25
public ConfigurationApi () {
22
26
// todo: configure with env variable.
23
27
ConfigPersistence configPersistence = new DefaultConfigPersistence ("../data/config/" );
28
+ final IntegrationSchemaValidation integrationSchemaValidation =
29
+ new IntegrationSchemaValidation (configPersistence );
24
30
workspacesHandler = new WorkspacesHandler (configPersistence );
25
31
sourcesHandler = new SourcesHandler (configPersistence );
26
32
sourceSpecificationsHandler = new SourceSpecificationsHandler (configPersistence );
27
33
sourceImplementationsHandler =
28
- new SourceImplementationsHandler (
29
- configPersistence , new IntegrationSchemaValidation (configPersistence ));
34
+ new SourceImplementationsHandler (configPersistence , integrationSchemaValidation );
35
+ destinationsHandler = new DestinationsHandler (configPersistence );
36
+ destinationSpecificationsHandler = new DestinationSpecificationsHandler (configPersistence );
37
+ destinationImplementationsHandler =
38
+ new DestinationImplementationsHandler (configPersistence , integrationSchemaValidation );
30
39
}
31
40
32
41
// WORKSPACE
@@ -67,16 +76,17 @@ public SourceSpecificationRead getSourceSpecification(
67
76
}
68
77
69
78
// SOURCE IMPLEMENTATION
79
+
70
80
@ Override
71
81
public SourceImplementationRead createSourceImplementation (
72
82
@ Valid SourceImplementationCreate sourceImplementationCreate ) {
73
83
return sourceImplementationsHandler .createSourceImplementation (sourceImplementationCreate );
74
84
}
75
85
76
86
@ Override
77
- public SourceImplementationRead getSourceImplementation (
78
- @ Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody ) {
79
- return sourceImplementationsHandler .getSourceImplementation ( sourceImplementationIdRequestBody );
87
+ public SourceImplementationRead updateSourceImplementation (
88
+ @ Valid SourceImplementationUpdate sourceImplementationUpdate ) {
89
+ return sourceImplementationsHandler .updateSourceImplementation ( sourceImplementationUpdate );
80
90
}
81
91
82
92
@ Override
@@ -87,15 +97,15 @@ public SourceImplementationReadList listSourceImplementationsForWorkspace(
87
97
}
88
98
89
99
@ Override
90
- public SourceImplementationTestConnectionRead testConnectionToSourceImplementation (
100
+ public SourceImplementationRead getSourceImplementation (
91
101
@ Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody ) {
92
- return null ;
102
+ return sourceImplementationsHandler . getSourceImplementation ( sourceImplementationIdRequestBody ) ;
93
103
}
94
104
95
105
@ Override
96
- public SourceImplementationRead updateSourceImplementation (
97
- @ Valid SourceImplementationUpdate sourceImplementationUpdate ) {
98
- return sourceImplementationsHandler . updateSourceImplementation ( sourceImplementationUpdate ) ;
106
+ public SourceImplementationTestConnectionRead testConnectionToSourceImplementation (
107
+ @ Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody ) {
108
+ return null ;
99
109
}
100
110
101
111
@ Override
@@ -104,38 +114,56 @@ public SourceImplementationDiscoverSchemaRead discoverSchemaForSourceImplementat
104
114
return null ;
105
115
}
106
116
117
+ // DESTINATION
118
+
107
119
@ Override
108
- public ConnectionRead createConnection (@ Valid ConnectionCreate connectionCreate ) {
109
- return null ;
120
+ public DestinationReadList listDestinations () {
121
+ return destinationsHandler .listDestinations ();
122
+ }
123
+
124
+ @ Override
125
+ public DestinationRead getDestination (@ Valid DestinationIdRequestBody destinationIdRequestBody ) {
126
+ return destinationsHandler .getDestination (destinationIdRequestBody );
127
+ }
128
+
129
+ // DESTINATION SPECIFICATION
130
+
131
+ @ Override
132
+ public DestinationSpecificationRead getDestinationSpecification (
133
+ @ Valid DestinationIdRequestBody destinationIdRequestBody ) {
134
+ return destinationSpecificationsHandler .getDestinationSpecification (destinationIdRequestBody );
110
135
}
111
136
137
+ // DESTINATION IMPLEMENTATION
112
138
@ Override
113
139
public DestinationImplementationRead createDestinationImplementation (
114
140
@ Valid DestinationImplementationCreate destinationImplementationCreate ) {
115
- return null ;
141
+ return destinationImplementationsHandler .createDestinationImplementation (
142
+ destinationImplementationCreate );
116
143
}
117
144
118
145
@ Override
119
- public ConnectionRead getConnection (@ Valid ConnectionIdRequestBody connectionIdRequestBody ) {
120
- return null ;
146
+ public DestinationImplementationRead updateDestinationImplementation (
147
+ @ Valid DestinationImplementationUpdate destinationImplementationUpdate ) {
148
+ return destinationImplementationsHandler .updateDestinationImplementation (
149
+ destinationImplementationUpdate );
121
150
}
122
151
123
152
@ Override
124
- public DestinationRead getDestination (@ Valid DestinationIdRequestBody destinationIdRequestBody ) {
125
- return null ;
153
+ public DestinationImplementationReadList listDestinationImplementationsForWorkspace (
154
+ @ Valid WorkspaceIdRequestBody workspaceIdRequestBody ) {
155
+ return destinationImplementationsHandler .listDestinationImplementationsForWorkspace (
156
+ workspaceIdRequestBody );
126
157
}
127
158
128
159
@ Override
129
160
public DestinationImplementationRead getDestinationImplementation (
130
161
@ Valid DestinationImplementationIdRequestBody destinationImplementationIdRequestBody ) {
131
- return null ;
162
+ return destinationImplementationsHandler .getDestinationImplementation (
163
+ destinationImplementationIdRequestBody );
132
164
}
133
165
134
- @ Override
135
- public DestinationSpecificationRead getDestinationSpecification (
136
- @ Valid DestinationIdRequestBody destinationIdRequestBody ) {
137
- return null ;
138
- }
166
+ // CONNECTION
139
167
140
168
@ Override
141
169
public ConnectionReadList listConnectionsForWorkspace (
@@ -144,13 +172,12 @@ public ConnectionReadList listConnectionsForWorkspace(
144
172
}
145
173
146
174
@ Override
147
- public DestinationImplementationReadList listDestinationImplementationsForWorkspace (
148
- @ Valid WorkspaceIdRequestBody workspaceIdRequestBody ) {
175
+ public ConnectionRead getConnection (@ Valid ConnectionIdRequestBody connectionIdRequestBody ) {
149
176
return null ;
150
177
}
151
178
152
179
@ Override
153
- public DestinationReadList listDestinations ( ) {
180
+ public ConnectionRead createConnection ( @ Valid ConnectionCreate connectionCreate ) {
154
181
return null ;
155
182
}
156
183
@@ -163,10 +190,4 @@ public ConnectionSyncRead syncConnection(@Valid ConnectionIdRequestBody connecti
163
190
public ConnectionRead updateConnection (@ Valid ConnectionUpdate connectionUpdate ) {
164
191
return null ;
165
192
}
166
-
167
- @ Override
168
- public DestinationImplementationRead updateDestinationImplementation (
169
- @ Valid DestinationImplementationUpdate destinationImplementationUpdate ) {
170
- return null ;
171
- }
172
193
}
0 commit comments