Search in sources :

Example 1 with KafkaConnectionSettings

use of com.openshift.cloud.api.connector.models.KafkaConnectionSettings in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.

the class ConnectorsApiClientImpl method createConnector.

@Override
public Connector createConnector(ConnectorEntity connectorEntity) {
    ConnectorRequest createConnectorRequest = new ConnectorRequest();
    String newConnectorName = connectorEntity.getName();
    createConnectorRequest.setName(newConnectorName);
    DeploymentLocation deploymentLocation = new DeploymentLocation();
    deploymentLocation.setKind("addon");
    deploymentLocation.setClusterId(mcClusterId);
    createConnectorRequest.setDeploymentLocation(deploymentLocation);
    String connectorType = connectorEntity.getConnectorType();
    JsonNode payload = connectorEntity.getDefinition();
    createConnectorRequest.setConnectorTypeId(connectorType);
    createConnectorRequest.setConnector(payload);
    ServiceAccount serviceAccount = new ServiceAccount();
    serviceAccount.setClientId(serviceAccountId);
    serviceAccount.setClientSecret(serviceAccountSecret);
    createConnectorRequest.setServiceAccount(serviceAccount);
    KafkaConnectionSettings kafka = new KafkaConnectionSettings();
    kafka.setUrl(kafkaBootstrapServer);
    // https://issues.redhat.com/browse/MGDOBR-198
    // this is currently ignored in the Connectors API
    kafka.setId(KAFKA_ID_IGNORED);
    createConnectorRequest.setKafka(kafka);
    return createConnector(createConnectorRequest);
}
Also used : ServiceAccount(com.openshift.cloud.api.connector.models.ServiceAccount) ConnectorRequest(com.openshift.cloud.api.connector.models.ConnectorRequest) JsonNode(com.fasterxml.jackson.databind.JsonNode) DeploymentLocation(com.openshift.cloud.api.connector.models.DeploymentLocation) KafkaConnectionSettings(com.openshift.cloud.api.connector.models.KafkaConnectionSettings)

Example 2 with KafkaConnectionSettings

use of com.openshift.cloud.api.connector.models.KafkaConnectionSettings in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.

the class ConnectorsApiClientImpl method createConnector.

@Override
public Connector createConnector(ConnectorEntity connectorEntity) {
    ConnectorRequest createConnectorRequest = new ConnectorRequest();
    String newConnectorName = connectorEntity.getName();
    createConnectorRequest.setName(newConnectorName);
    createConnectorRequest.setNamespaceId(mcNamespaceId);
    String connectorTypeId = connectorEntity.getConnectorTypeId();
    JsonNode payload = connectorEntity.getDefinition();
    createConnectorRequest.setConnectorTypeId(connectorTypeId);
    createConnectorRequest.setConnector(payload);
    ServiceAccount serviceAccount = new ServiceAccount();
    serviceAccount.setClientId(serviceAccountId);
    serviceAccount.setClientSecret(serviceAccountSecret);
    createConnectorRequest.setServiceAccount(serviceAccount);
    KafkaConnectionSettings kafka = new KafkaConnectionSettings();
    kafka.setUrl(kafkaBootstrapServer);
    // https://issues.redhat.com/browse/MGDOBR-198
    // this is currently ignored in the Connectors API
    kafka.setId(KAFKA_ID_IGNORED);
    createConnectorRequest.setKafka(kafka);
    return createConnector(createConnectorRequest);
}
Also used : ServiceAccount(com.openshift.cloud.api.connector.models.ServiceAccount) ConnectorRequest(com.openshift.cloud.api.connector.models.ConnectorRequest) JsonNode(com.fasterxml.jackson.databind.JsonNode) KafkaConnectionSettings(com.openshift.cloud.api.connector.models.KafkaConnectionSettings)

Example 3 with KafkaConnectionSettings

use of com.openshift.cloud.api.connector.models.KafkaConnectionSettings in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.

the class ManagedConnectorServiceApplication method createSlackConnector.

private Connector createSlackConnector() throws Exception {
    ConnectorsApi apiInstance = createConnectorsAPI();
    // Boolean | Perform the action in an asynchronous manner
    // Connector | Connector data
    Connector createConnectorRequest = new Connector();
    ConnectorAllOfMetadata metadata = new ConnectorAllOfMetadata();
    metadata.setName("openbridge-slack-connector");
    metadata.setKafkaId("kafkaId-ignored");
    createConnectorRequest.setMetadata(metadata);
    AddonClusterTarget deploymentLocation = new AddonClusterTarget();
    deploymentLocation.setKind("addon");
    deploymentLocation.setClusterId("c4ovtrsldcav5gaeqkn0");
    createConnectorRequest.setDeploymentLocation(deploymentLocation);
    createConnectorRequest.setConnectorTypeId("slack_sink_0.1");
    KafkaConnectionSettings kafka = new KafkaConnectionSettings();
    kafka.setBootstrapServer(kafkaUrl);
    kafka.setClientId(serviceAccountId);
    kafka.setClientSecret(serviceAccountSecret);
    createConnectorRequest.setKafka(kafka);
    ConnectorSpec connectorSpec = new ConnectorSpec();
    ConnectorSpecKafka connectorSpecKafka = new ConnectorSpecKafka();
    connectorSpecKafka.setTopic("slacktopic");
    connectorSpec.setConnectorSpecKafka(connectorSpecKafka);
    SlackConnector connector = new SlackConnector();
    connector.setChannel("mc");
    connector.setWebhookUrl(webhookUrl);
    connectorSpec.setConnector(connector);
    createConnectorRequest.setConnectorSpec(connectorSpec);
    try {
        Connector connectorResult = apiInstance.createConnector(true, createConnectorRequest);
        System.out.println("Connector created: " + connectorResult);
        return connectorResult;
    } catch (WebApplicationException e) {
        Response response = e.getResponse();
        System.out.println("Error code: " + response.getStatus());
        ByteArrayInputStream arrayInputStream = (ByteArrayInputStream) response.getEntity();
        Scanner scanner = new Scanner(arrayInputStream);
        // To read all scanner content in one String
        scanner.useDelimiter("\\Z");
        String data = "";
        if (scanner.hasNext()) {
            data = scanner.next();
        }
        System.out.println(data);
        throw e;
    }
}
Also used : SlackConnector(com.redhat.service.dto.request.SlackConnector) Connector(com.openshift.cloud.api.connector.models.Connector) Scanner(java.util.Scanner) ConnectorAllOfMetadata(com.openshift.cloud.api.connector.models.ConnectorAllOfMetadata) ConnectorSpecKafka(com.redhat.service.dto.request.ConnectorSpecKafka) WebApplicationException(javax.ws.rs.WebApplicationException) ConnectorsApi(com.openshift.cloud.api.connector.ConnectorsApi) ConnectorSpec(com.redhat.service.dto.request.ConnectorSpec) HttpResponse(java.net.http.HttpResponse) Response(javax.ws.rs.core.Response) SlackConnector(com.redhat.service.dto.request.SlackConnector) ByteArrayInputStream(java.io.ByteArrayInputStream) AddonClusterTarget(com.openshift.cloud.api.connector.models.AddonClusterTarget) KafkaConnectionSettings(com.openshift.cloud.api.connector.models.KafkaConnectionSettings)

Aggregations

KafkaConnectionSettings (com.openshift.cloud.api.connector.models.KafkaConnectionSettings)3 JsonNode (com.fasterxml.jackson.databind.JsonNode)2 ConnectorRequest (com.openshift.cloud.api.connector.models.ConnectorRequest)2 ServiceAccount (com.openshift.cloud.api.connector.models.ServiceAccount)2 ConnectorsApi (com.openshift.cloud.api.connector.ConnectorsApi)1 AddonClusterTarget (com.openshift.cloud.api.connector.models.AddonClusterTarget)1 Connector (com.openshift.cloud.api.connector.models.Connector)1 ConnectorAllOfMetadata (com.openshift.cloud.api.connector.models.ConnectorAllOfMetadata)1 DeploymentLocation (com.openshift.cloud.api.connector.models.DeploymentLocation)1 ConnectorSpec (com.redhat.service.dto.request.ConnectorSpec)1 ConnectorSpecKafka (com.redhat.service.dto.request.ConnectorSpecKafka)1 SlackConnector (com.redhat.service.dto.request.SlackConnector)1 ByteArrayInputStream (java.io.ByteArrayInputStream)1 HttpResponse (java.net.http.HttpResponse)1 Scanner (java.util.Scanner)1 WebApplicationException (javax.ws.rs.WebApplicationException)1 Response (javax.ws.rs.core.Response)1