Jak przypisać czas Cache do Live w interfejsie CacheBuilder?

Eksperymentowałem z pamięcią podręczną platformy i natknąłem się na interfejs CacheBuilder, który wygląda solidnie na naszą pamięć podręczną. Jedynym problemem jest to, jak ustawić czas życia w tym interfejsie? Domyślnie będzie to 24 godziny, chcę ustawić 2 godziny.

Kod:

class UserInfoCache implements Cache.CacheBuilder { public Object doLoad(String userid) { User u = (User)[SELECT Id, IsActive, username FROM User WHERE id =: userid]; return u; } 

Użycie:

User batman = (User) Cache.Org.get(UserInfoCache.class, ‘00541000000ek4c"); 

Soure : https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_interface_cache_CacheBuilder.htm

Odpowiedź

Wygląda to na ograniczenie użycia CacheBuilder.

Kreator pamięci podręcznej zapisuje i odczytuje dane z pamięci podręcznej za Ciebie i nie ma możliwości ustawienia TTL pamięci podręcznej podczas używania jej można zobaczyć w dokumentacji: Bezpiecznie buforuj wartości za pomocą interfejsu CacheBuilder

Odpowiedź

Ten interfejs pomaga tylko w pobieraniu wartości z pamięci podręcznej bez dodawania dużej ilości dodatkowego kodu obsługującego błędy pamięci podręcznej. Nadal musisz używać metody put dla Pamięć podręczna organizacji lub sesji do przechowywania wartości w pamięci podręcznej. Możesz wtedy ustawić wartość TTL.

Przykład:

Cache.Org.put("00541000000ek4c", userVar, 60*60*2);

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *