Class OcpKafkaController

  • All Implemented Interfaces:
    KafkaController

    public class OcpKafkaController
    extends Object
    implements KafkaController
    This class provides control over Kafka instance deployed in OpenShift
    Author:
    Jakub Cechacek
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private io.strimzi.api.kafka.model.Kafka kafka  
      private static org.slf4j.Logger LOGGER  
      private String name  
      private io.fabric8.openshift.client.OpenShiftClient ocp  
      private String project  
    • Constructor Summary

      Constructors 
      Constructor Description
      OcpKafkaController​(io.strimzi.api.kafka.model.Kafka kafka, io.fabric8.openshift.client.OpenShiftClient ocp)  
    • Field Detail

      • LOGGER

        private static final org.slf4j.Logger LOGGER
      • ocp

        private final io.fabric8.openshift.client.OpenShiftClient ocp
      • project

        private final String project
      • name

        private final String name
      • kafka

        private io.strimzi.api.kafka.model.Kafka kafka
    • Constructor Detail

      • OcpKafkaController

        public OcpKafkaController​(io.strimzi.api.kafka.model.Kafka kafka,
                                  io.fabric8.openshift.client.OpenShiftClient ocp)
    • Method Detail

      • deployTopic

        public io.strimzi.api.kafka.model.KafkaTopic deployTopic​(String yamlPath)
                                                          throws InterruptedException
        Deploy kafka topic from given CR
        Parameters:
        yamlPath - path to yaml descript
        Returns:
        created topic
        Throws:
        InterruptedException
      • undeploy

        public boolean undeploy()
        Description copied from interface: KafkaController
        Undeploy this Kafka cluster
        Specified by:
        undeploy in interface KafkaController
        Returns:
        true on operation success
      • topicOperation

        private io.fabric8.kubernetes.client.dsl.NonNamespaceOperation<io.strimzi.api.kafka.model.KafkaTopic,​io.strimzi.api.kafka.KafkaTopicList,​io.fabric8.kubernetes.client.dsl.Resource<io.strimzi.api.kafka.model.KafkaTopic>> topicOperation()
      • kafkaOperation

        private io.fabric8.kubernetes.client.dsl.NonNamespaceOperation<io.strimzi.api.kafka.model.Kafka,​io.strimzi.api.kafka.KafkaList,​io.fabric8.kubernetes.client.dsl.Resource<io.strimzi.api.kafka.model.Kafka>> kafkaOperation()