Module materialize.zippy.source_capabilities

Expand source code Browse git
# Copyright Materialize, Inc. and contributors. All rights reserved.
#
# Use of this software is governed by the Business Source License
# included in the LICENSE file at the root of this repository.
#
# As of the Change Date specified in that file, in accordance with
# the Business Source License, use of this software will be governed
# by the Apache License, Version 2.0.

from materialize.zippy.framework import Capability
from materialize.zippy.kafka_capabilities import TopicExists
from materialize.zippy.watermarks import Watermarks


class SourceExists(Capability):
    """A Kafka source exists in Materialize."""

    @classmethod
    def format_str(cls) -> str:
        return "source_{}"

    def __init__(
        self, name: str, topic: TopicExists, cluster_name: str, uses_ssh_tunnel: bool
    ) -> None:
        self.name = name
        self.topic = topic
        self.cluster_name = cluster_name
        self.uses_ssh_tunnel = uses_ssh_tunnel

    def get_watermarks(self) -> Watermarks:
        return self.topic.watermarks

Classes

class SourceExists (name: str, topic: TopicExists, cluster_name: str, uses_ssh_tunnel: bool)

A Kafka source exists in Materialize.

Expand source code Browse git
class SourceExists(Capability):
    """A Kafka source exists in Materialize."""

    @classmethod
    def format_str(cls) -> str:
        return "source_{}"

    def __init__(
        self, name: str, topic: TopicExists, cluster_name: str, uses_ssh_tunnel: bool
    ) -> None:
        self.name = name
        self.topic = topic
        self.cluster_name = cluster_name
        self.uses_ssh_tunnel = uses_ssh_tunnel

    def get_watermarks(self) -> Watermarks:
        return self.topic.watermarks

Ancestors

Static methods

def format_str() ‑> str
Expand source code Browse git
@classmethod
def format_str(cls) -> str:
    return "source_{}"

Methods

def get_watermarks(self) ‑> Watermarks
Expand source code Browse git
def get_watermarks(self) -> Watermarks:
    return self.topic.watermarks