From 5848c6ff353f46eb2869de7aa8e61870041cc3d8 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Wed, 16 Sep 2015 16:22:47 +0200 Subject: [client] OrgCache: try/catch sat org list fetching and optimize code a bit --- .../openslx/dozmod/thrift/cache/OrganizationCache.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'dozentenmodul/src/main/java') diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/cache/OrganizationCache.java b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/cache/OrganizationCache.java index 2c224006..c76da623 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/cache/OrganizationCache.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/cache/OrganizationCache.java @@ -28,17 +28,22 @@ public class OrganizationCache { List orgs = null; try { orgs = ThriftManager.getMasterClient().getOrganizations(); - Collections.sort(orgs, Sorters.organization); - return orgs; } catch (Exception e) { LOGGER.warn( "Failed to get organization list from master server, trying satellite for backup..", e); } - orgs = ThriftManager.getSatClient().getAllOrganizations(); - Collections.sort(orgs, Sorters.organization); + if (orgs == null) { + try { + orgs = ThriftManager.getSatClient().getAllOrganizations(); + } catch (Exception e) { + LOGGER.error("Failed to get organization list from satellite server. ", e); + // both failed, can this ever happen? TODO if it does, what do we do? + } + } + if (orgs != null) + Collections.sort(orgs, Sorters.organization); return orgs; - // TODO: Sort list by display name? (Check whether ok) } }; -- cgit v1.2.3-55-g7522