天天看點

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic

Created by Jerry Wang, last modified on Jun 19, 2015

gateway系統首先會檢查自己的 cache table看裡面是否有cached的model資料:

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic

接下來gateway會把這個從frontend端cache table裡讀出來的model的change timestamp和背景的timestamp做比較:

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic

就是frontend這張表裡的資料: /IWFND/I_MED_CTC. application第一次運作時,frontend的cache table必定是空的,第一次metadata請求完之後,從背景傳回的model資料就存在這張表裡。

Backend class:

如果背景MPC_EXT的lv_last_modified和frontend傳進來的cached model的last change timestamp一緻,就認為model是最新的,不用發送。

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic

否則認為cache應該發送:

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic

如果cache_timestamp 為空,證明frontend系統沒有enable cache,這種情況下不需要發送cache model到frontend。

SAP ABAP OData gateway緩存表的存儲邏輯 - cache table logic