< 上一個課程 | 下一個課程 >

第 13 課:使用內容過濾主題過濾更新資料

在這一課,您將使用內容過濾主題過濾更新資料。

您可能對 MyTopic 主題中的所有更新資料都沒有興趣。例如,您可能僅希望接收 myDoubleAttribute 範圍在 [0.2 … 0.5] 之間的更新資料通知。若要自訂通知,可以使用內容過濾主題。

  1. 開啟在第 2 課:建立 ddsDiagram 圖中建立的 TopicDiagram 圖。
  2. 新增名為 MyContentFilteredTopic 的主題。
  3. 標籤標籤上,輸入下列資訊:
    1. 類型欄位設定為 CONTENT_FILTERED
    2. related_topic 欄位設定為 MyTopic 此設定指示您希望過濾 MyTopic 的更新值。MyContentFilteredTopic 的類型與 MyTopic 的類型相同;您無需設定類型欄位。
    3. 將下列表示式新增至表示式欄位:
      ((myDoubleAttribute >= 0.2) AND (myDoubleAttribute <= 0.5))
    4. 按一下確定以關閉「特性」視窗
  4. 在 SubscriberDiagram 或在瀏覽器中,選取 MyDataReader 實體並開啟其「特性」視窗。在標籤標籤上的主題欄位中,用 MyContentFilteredTopic 取代 MyTopic,然後按一下確定
  5. 為整個專案重新產生程式碼,然後重新建置整個專案。當您執行 MySubscribingApplication 及 MyPublishingApplication 之後,應該看到下列輸出。
    註: 為了符合本指導教學中的主題,下列樣本輸出的格式化與執行本課程時顯示的方式不同。樣本輸出已經透過插入換行符進行了格式化,因此您能看到每一行的輸出。當您執行本指導教學時輸出中不會出現這些換行符。每一行都以 myKeyAttribute 開始,以 myLongSequence 結束。
    準備接收資料
    myKeyAttribute: 2, myLongAttribute: 2, myBooleanAttribute: 0,
    myDoubleAttribute: 0.500, myStringAttribute: message number 2, 
    myLongSequence: {2, 3, 4}
    myKeyAttribute: 3, myLongAttribute: 3, myBooleanAttribute: 1, 
    myDoubleAttribute: 0.333, myStringAttribute: message number 3, 
    myLongSequence: {3, 4, 5}
    myKeyAttribute: 4, myLongAttribute: 4, myBooleanAttribute: 0, 
    myDoubleAttribute: 0.250, myStringAttribute: message number 4, 
    myLongSequence: {4, 5, 6}
    myKeyAttribute: 5, myLongAttribute: 5, myBooleanAttribute: 1, 
    myDoubleAttribute: 0.200, myStringAttribute: message number 5, 
    myLongSequence: {5, 6, 7}

課程回顧

在這一課,您學到如何使用內容過濾主題過濾更新資料。
在下一課,您將新增服務品質元素。
< 上一個課程 | 下一個課程 >

回饋