Skip to content

add destinations, destinationSpecifications, and destinationImplementations resources to API #49

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Aug 14, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion dataline-api/src/main/openapi/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -872,7 +872,7 @@ components:
required:
- destinations
properties:
sources:
destinations:
type: array
items:
$ref: "#/components/schemas/DestinationImplementationRead"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,22 @@
"title": "DestinationConnectionImplementation",
"description": "information required for connection to a destination.",
"type": "object",
"required": ["destinationSpecificationId", "destinationImplementationId", "configuration"],
"required": [
"destinationSpecificationId",
"workspaceId",
"destinationImplementationId",
"configuration"
],
"additionalProperties": false,
"properties": {
"destinationSpecificationId": {
"type": "string",
"format": "uuid"
},
"workspaceId": {
"type": "string",
"format": "uuid"
},
"destinationImplementationId": {
"type": "string",
"format": "uuid"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import io.dataline.api.model.*;
import io.dataline.config.persistence.ConfigPersistence;
import io.dataline.config.persistence.DefaultConfigPersistence;
import io.dataline.server.handlers.*;
import io.dataline.server.handlers.SourceImplementationsHandler;
import io.dataline.server.handlers.SourceSpecificationsHandler;
import io.dataline.server.handlers.SourcesHandler;
Expand All @@ -17,16 +18,24 @@ public class ConfigurationApi implements io.dataline.api.V1Api {
private final SourcesHandler sourcesHandler;
private final SourceSpecificationsHandler sourceSpecificationsHandler;
private final SourceImplementationsHandler sourceImplementationsHandler;
private final DestinationsHandler destinationsHandler;
private final DestinationSpecificationsHandler destinationSpecificationsHandler;
private final DestinationImplementationsHandler destinationImplementationsHandler;

public ConfigurationApi() {
// todo: configure with env variable.
ConfigPersistence configPersistence = new DefaultConfigPersistence("../data/config/");
final IntegrationSchemaValidation integrationSchemaValidation =
new IntegrationSchemaValidation(configPersistence);
workspacesHandler = new WorkspacesHandler(configPersistence);
sourcesHandler = new SourcesHandler(configPersistence);
sourceSpecificationsHandler = new SourceSpecificationsHandler(configPersistence);
sourceImplementationsHandler =
new SourceImplementationsHandler(
configPersistence, new IntegrationSchemaValidation(configPersistence));
new SourceImplementationsHandler(configPersistence, integrationSchemaValidation);
destinationsHandler = new DestinationsHandler(configPersistence);
destinationSpecificationsHandler = new DestinationSpecificationsHandler(configPersistence);
destinationImplementationsHandler =
new DestinationImplementationsHandler(configPersistence, integrationSchemaValidation);
}

// WORKSPACE
Expand Down Expand Up @@ -67,16 +76,17 @@ public SourceSpecificationRead getSourceSpecification(
}

// SOURCE IMPLEMENTATION

@Override
public SourceImplementationRead createSourceImplementation(
@Valid SourceImplementationCreate sourceImplementationCreate) {
return sourceImplementationsHandler.createSourceImplementation(sourceImplementationCreate);
}

@Override
public SourceImplementationRead getSourceImplementation(
@Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody) {
return sourceImplementationsHandler.getSourceImplementation(sourceImplementationIdRequestBody);
public SourceImplementationRead updateSourceImplementation(
@Valid SourceImplementationUpdate sourceImplementationUpdate) {
return sourceImplementationsHandler.updateSourceImplementation(sourceImplementationUpdate);
}

@Override
Expand All @@ -87,15 +97,15 @@ public SourceImplementationReadList listSourceImplementationsForWorkspace(
}

@Override
public SourceImplementationTestConnectionRead testConnectionToSourceImplementation(
public SourceImplementationRead getSourceImplementation(
@Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody) {
return null;
return sourceImplementationsHandler.getSourceImplementation(sourceImplementationIdRequestBody);
}

@Override
public SourceImplementationRead updateSourceImplementation(
@Valid SourceImplementationUpdate sourceImplementationUpdate) {
return sourceImplementationsHandler.updateSourceImplementation(sourceImplementationUpdate);
public SourceImplementationTestConnectionRead testConnectionToSourceImplementation(
@Valid SourceImplementationIdRequestBody sourceImplementationIdRequestBody) {
return null;
}

@Override
Expand All @@ -104,38 +114,56 @@ public SourceImplementationDiscoverSchemaRead discoverSchemaForSourceImplementat
return null;
}

// DESTINATION

@Override
public ConnectionRead createConnection(@Valid ConnectionCreate connectionCreate) {
return null;
public DestinationReadList listDestinations() {
return destinationsHandler.listDestinations();
}

@Override
public DestinationRead getDestination(@Valid DestinationIdRequestBody destinationIdRequestBody) {
return destinationsHandler.getDestination(destinationIdRequestBody);
}

// DESTINATION SPECIFICATION

@Override
public DestinationSpecificationRead getDestinationSpecification(
@Valid DestinationIdRequestBody destinationIdRequestBody) {
return destinationSpecificationsHandler.getDestinationSpecification(destinationIdRequestBody);
}

// DESTINATION IMPLEMENTATION
@Override
public DestinationImplementationRead createDestinationImplementation(
@Valid DestinationImplementationCreate destinationImplementationCreate) {
return null;
return destinationImplementationsHandler.createDestinationImplementation(
destinationImplementationCreate);
}

@Override
public ConnectionRead getConnection(@Valid ConnectionIdRequestBody connectionIdRequestBody) {
return null;
public DestinationImplementationRead updateDestinationImplementation(
@Valid DestinationImplementationUpdate destinationImplementationUpdate) {
return destinationImplementationsHandler.updateDestinationImplementation(
destinationImplementationUpdate);
}

@Override
public DestinationRead getDestination(@Valid DestinationIdRequestBody destinationIdRequestBody) {
return null;
public DestinationImplementationReadList listDestinationImplementationsForWorkspace(
@Valid WorkspaceIdRequestBody workspaceIdRequestBody) {
return destinationImplementationsHandler.listDestinationImplementationsForWorkspace(
workspaceIdRequestBody);
}

@Override
public DestinationImplementationRead getDestinationImplementation(
@Valid DestinationImplementationIdRequestBody destinationImplementationIdRequestBody) {
return null;
return destinationImplementationsHandler.getDestinationImplementation(
destinationImplementationIdRequestBody);
}

@Override
public DestinationSpecificationRead getDestinationSpecification(
@Valid DestinationIdRequestBody destinationIdRequestBody) {
return null;
}
// CONNECTION

@Override
public ConnectionReadList listConnectionsForWorkspace(
Expand All @@ -144,13 +172,12 @@ public ConnectionReadList listConnectionsForWorkspace(
}

@Override
public DestinationImplementationReadList listDestinationImplementationsForWorkspace(
@Valid WorkspaceIdRequestBody workspaceIdRequestBody) {
public ConnectionRead getConnection(@Valid ConnectionIdRequestBody connectionIdRequestBody) {
return null;
}

@Override
public DestinationReadList listDestinations() {
public ConnectionRead createConnection(@Valid ConnectionCreate connectionCreate) {
return null;
}

Expand All @@ -163,10 +190,4 @@ public ConnectionSyncRead syncConnection(@Valid ConnectionIdRequestBody connecti
public ConnectionRead updateConnection(@Valid ConnectionUpdate connectionUpdate) {
return null;
}

@Override
public DestinationImplementationRead updateDestinationImplementation(
@Valid DestinationImplementationUpdate destinationImplementationUpdate) {
return null;
}
}
Loading