@Override public List<TemplateListItem> getTemplateListItems(TemplateList tl) { ArrayList<TemplateListItem> result = new ArrayList<TemplateListItem>(); final StoreDB.Api api = store.getApi(); try { final List<TemplateListItem> fromCache = cache.getTemplateListItems(tl); if (fromCache != null) { return fromCache; } return cache.putTemplateListItems( tl, toClientTemplateListItems(api.getTemplateListItems(tl.getId()))); } catch (SQLException ex) { log.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } finally { api.close(); } return result; }