TableView
TableView can be used to:
- view the most recent values of a given key in a topic using getValue()
- construct a table with the most recent value of all keys using forEach()
- construct a table and listen for updates using forEachAndListen()
We will use project TableView to explore getValue(), but TableReader also includes examples for forEach() and forEachAndListen().
Execute KeyedProducer to publish 100 keyed messages to topic summitstudent1/developer/tableview.
Execute TableReader to return the most recent message for messages key with “cat”.
Client created
TableView reader created
Value of cat using get: my-message-96
You can uncomment myPulsarTableView.doWork() to test forEach() and forEachAndListen().
forEach() will return the most recent value for each key:
tv.forEach((key,value) -> {
System.out.println("Key: " + key + " Value: " + value);
});
Client created
TableView reader created
Key: mouse Value: my-message-98
Key: llama Value: my-message-95
Key: cat Value: my-message-96
Key: rabbit Value: my-message-99
Key: cow Value: my-message-97
Key: parrot Value: my-message-94
exited forEach or forEachAndListen
forEachAndLIsten() will return the most recent value for each key and listen for updates. If you execute KeyedProducer again, you will notice that the forEachAndListen() will still receive messages.
Client created
TableView reader created
Key: mouse Value: my-message-98
Key: llama Value: my-message-95
Key: cat Value: my-message-96
Key: rabbit Value: my-message-99
Key: cow Value: my-message-97
Key: parrot Value: my-message-94
exited forEach or forEachAndListen
Key: cat Value: my-message-0
Key: cow Value: my-message-1
Key: mouse Value: my-message-2
Key: rabbit Value: my-message-3
Key: parrot Value: my-message-4
Key: llama Value: my-message-5
Key: cat Value: my-message-6
Key: cow Value: my-message-7
Key: mouse Value: my-message-8
Key: rabbit Value: my-message-9
Key: parrot Value: my-message-10
Key: llama Value: my-message-11
Key: cat Value: my-message-12
Key: cow Value: my-message-13
Key: mouse Value: my-message-14
Key: rabbit Value: my-message-15
Key: parrot Value: my-message-16
Key: llama Value: my-message-17
Key: cat Value: my-message-18
Key: cow Value: my-message-19
Key: mouse Value: my-message-20
Key: rabbit Value: my-message-21
Key: parrot Value: my-message-22
Key: llama Value: my-message-23
Key: cat Value: my-message-24
Key: cow Value: my-message-25
Key: mouse Value: my-message-26
Key: rabbit Value: my-message-27
Key: parrot Value: my-message-28
Key: llama Value: my-message-29
Key: cat Value: my-message-30
Key: cow Value: my-message-31
Key: mouse Value: my-message-32
Key: rabbit Value: my-message-33
Key: parrot Value: my-message-34
Key: llama Value: my-message-35
Key: cat Value: my-message-36
Key: cow Value: my-message-37
Key: mouse Value: my-message-38
Key: rabbit Value: my-message-39
Key: parrot Value: my-message-40
Key: llama Value: my-message-41
Key: cat Value: my-message-42
Key: cow Value: my-message-43
Key: mouse Value: my-message-44
Key: rabbit Value: my-message-45
Key: parrot Value: my-message-46
Key: llama Value: my-message-47
Key: cat Value: my-message-48
Key: cow Value: my-message-49
Key: mouse Value: my-message-50
Key: rabbit Value: my-message-51
Key: parrot Value: my-message-52
Key: llama Value: my-message-53
Key: cat Value: my-message-54
Key: cow Value: my-message-55
Key: mouse Value: my-message-56
Key: rabbit Value: my-message-57
Key: parrot Value: my-message-58
Key: llama Value: my-message-59
Key: cat Value: my-message-60
Key: cow Value: my-message-61
Key: mouse Value: my-message-62
Key: rabbit Value: my-message-63
Key: parrot Value: my-message-64
Key: llama Value: my-message-65
Key: cat Value: my-message-66
Key: cow Value: my-message-67
Key: mouse Value: my-message-68
Key: rabbit Value: my-message-69
Key: parrot Value: my-message-70
Key: llama Value: my-message-71
Key: cat Value: my-message-72
Key: cow Value: my-message-73
Key: mouse Value: my-message-74
Key: rabbit Value: my-message-75
Key: parrot Value: my-message-76
Key: llama Value: my-message-77
Key: cat Value: my-message-78
Key: cow Value: my-message-79
Key: mouse Value: my-message-80
Key: rabbit Value: my-message-81
Key: parrot Value: my-message-82
Key: llama Value: my-message-83
Key: cat Value: my-message-84
Key: cow Value: my-message-85
Key: mouse Value: my-message-86
Key: rabbit Value: my-message-87
Key: parrot Value: my-message-88
Key: llama Value: my-message-89
Key: cat Value: my-message-90
Key: cow Value: my-message-91
Key: mouse Value: my-message-92
Key: rabbit Value: my-message-93
Key: parrot Value: my-message-94
Key: llama Value: my-message-95
Key: cat Value: my-message-96
Key: cow Value: my-message-97
Key: mouse Value: my-message-98
Key: rabbit Value: my-message-99
