private TenantKeyAndCookie extractTenantKeyAndCookie(final String key) { final TenantKey tenantKey = Iterables.tryFind(ImmutableList.copyOf(TenantKey.values()), new Predicate<TenantKey>() { @Override public boolean apply(final TenantKey input) { return key.startsWith(input.toString()); } }).orNull(); if (tenantKey == null) { return null; } final String cookie = !key.equals(tenantKey.toString()) ? key.substring(tenantKey.toString().length()) : null; return new TenantKeyAndCookie(tenantKey, cookie); }
final TenantKeyAndCookie tenantKeyAndCookie = extractTenantKeyAndCookie(cur.getType()); if (tenantKeyAndCookie != null) { final Collection<CacheInvalidationCallback> callbacks = parent.getCacheInvalidations(tenantKeyAndCookie.getTenantKey()); if (!callbacks.isEmpty()) { final InternalTenantContext tenantContext = new InternalTenantContext(cur.getTenantRecordId()); callback.invalidateCache(tenantKeyAndCookie.getTenantKey(), tenantKeyAndCookie.getCookie(), tenantContext);
private TenantKeyAndCookie extractTenantKeyAndCookie(final String key) { final TenantKey tenantKey = Iterables.tryFind(ImmutableList.copyOf(TenantKey.values()), new Predicate<TenantKey>() { @Override public boolean apply(final TenantKey input) { return key.startsWith(input.toString()); } }).orNull(); if (tenantKey == null) { return null; } final String cookie = !key.equals(tenantKey.toString()) ? key.substring(tenantKey.toString().length()) : null; return new TenantKeyAndCookie(tenantKey, cookie); }
final TenantKeyAndCookie tenantKeyAndCookie = extractTenantKeyAndCookie(cur.getType()); if (tenantKeyAndCookie != null) { final Collection<CacheInvalidationCallback> callbacks = parent.getCacheInvalidations(tenantKeyAndCookie.getTenantKey()); if (!callbacks.isEmpty()) { final InternalTenantContext tenantContext = new InternalTenantContext(cur.getTenantRecordId()); callback.invalidateCache(tenantKeyAndCookie.getTenantKey(), tenantKeyAndCookie.getCookie(), tenantContext);