Interface TableViewBuilder<T>


@Public @Evolving public interface TableViewBuilder<T>
TableViewBuilder is used to configure and create instances of TableView.
Since:
2.10.0
See Also:
  • Method Details

    • loadConf

      TableViewBuilder<T> loadConf(Map<String,Object> config)
      Load the configuration from provided config map.

      Example:

      
        Map<String, Object> config = new HashMap<>();
        config.put("topicName", "test-topic");
        config.put("autoUpdatePartitionsSeconds", "300");
      
        TableViewBuilder<byte[]> builder = ...;
        builder = builder.loadConf(config);
      
        TableView<byte[]> tableView = builder.create();
        
      Parameters:
      config - configuration to load
      Returns:
      the TableViewBuilder instance
    • create

      Finalize the creation of the TableView instance.

      This method will block until the tableView is created successfully or an exception is thrown.

      Returns:
      the TableView instance
      Throws:
      PulsarClientException - if the tableView creation fails
    • createAsync

      CompletableFuture<TableView<T>> createAsync()
      Finalize the creation of the TableView instance in asynchronous mode.

      This method will return a CompletableFuture that can be used to access the instance when it's ready.

      Returns:
      the TableView instance
    • topic

      TableViewBuilder<T> topic(String topic)
      Set the topic name of the TableView.
      Parameters:
      topic - the name of the topic to create the TableView
      Returns:
      the TableViewBuilder builder instance
    • autoUpdatePartitionsInterval

      TableViewBuilder<T> autoUpdatePartitionsInterval(int interval, TimeUnit unit)
      Set the interval of updating partitions (default: 1 minute).
      Parameters:
      interval - the interval of updating partitions
      unit - the time unit of the interval
      Returns:
      the TableViewBuilder builder instance