branch bugfix/CacheClients updated (8698a2d -> b83015e)
This is an automated email from the git hooks/post-receive script. New change to branch bugfix/CacheClients in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git from 8698a2d Create cache on clients new b83015e Use company as key in clients cache The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit b83015e5fb8aeca0a711b0040465b17155ac3718 Author: Julien Ruchaud <julien.ruchaud@debux.org> Date: Thu Jun 2 18:12:58 2016 +0200 Use company as key in clients cache Summary of changes: .../faxtomail/services/service/ClientService.java | 6 +++++- .../services/service/ClientServiceImpl.java | 23 ++++++++++++++-------- .../faxtomail/ui/swing/FaxToMailUIContext.java | 14 +++++++------ 3 files changed, 28 insertions(+), 15 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch bugfix/CacheClients in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit b83015e5fb8aeca0a711b0040465b17155ac3718 Author: Julien Ruchaud <julien.ruchaud@debux.org> Date: Thu Jun 2 18:12:58 2016 +0200 Use company as key in clients cache --- .../faxtomail/services/service/ClientService.java | 6 +++++- .../services/service/ClientServiceImpl.java | 23 ++++++++++++++-------- .../faxtomail/ui/swing/FaxToMailUIContext.java | 14 +++++++------ 3 files changed, 28 insertions(+), 15 deletions(-) diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientService.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientService.java index 4e724ea..5d06b49 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientService.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientService.java @@ -41,9 +41,13 @@ public interface ClientService extends FaxToMailService { Client getClientForCode(String code, String company); + String getCompanyForFolder(MailFolder folder); + List<Client> getClientsForFolder(MailFolder folder); - long getClientsCountForFolder(MailFolder folder); + List<Client> getClientsForCompany(String company); + + long getClientsCountForCompany(String company); void updateNewClients(); diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientServiceImpl.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientServiceImpl.java index 4b67500..abe86e1 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientServiceImpl.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ClientServiceImpl.java @@ -149,26 +149,33 @@ public class ClientServiceImpl extends FaxToMailServiceSupport implements Client } @Override - public List<Client> getClientsForFolder(MailFolder folder) { + public String getCompanyForFolder(MailFolder folder) { while (!folder.isUseCurrentLevelCompany() && folder.getParent() != null) { folder = folder.getParent(); } String company = folder.getCompany(); - + return company; + } + + @Override + public List<Client> getClientsForFolder(MailFolder folder) { + String company = getCompanyForFolder(folder); + ClientTopiaDao clientDao = getPersistenceContext().getClientDao(); List<Client> result = clientDao.forCompanyEquals(company).findAll(); return result; } @Override - public long getClientsCountForFolder(MailFolder folder) { - while (!folder.isUseCurrentLevelCompany() && folder.getParent() != null) { - folder = folder.getParent(); - } - - String company = folder.getCompany(); + public List<Client> getClientsForCompany(String company) { + ClientTopiaDao clientDao = getPersistenceContext().getClientDao(); + List<Client> result = clientDao.forCompanyEquals(company).findAll(); + return result; + } + @Override + public long getClientsCountForCompany(String company) { ClientTopiaDao clientDao = getPersistenceContext().getClientDao(); long result = clientDao.forCompanyEquals(company).count(); return result; diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java index 82a144b..d30a2c3 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java @@ -232,7 +232,7 @@ public class FaxToMailUIContext extends AbstractBean implements Closeable, UIMes /** */ protected List<Contact> contactCache; - protected Map<MailFolder, List<Client>> clientsCache; + protected Map<String, List<Client>> clientsCache; protected EmailFilter emailFilter = new EmailFilter(); @@ -329,7 +329,7 @@ public class FaxToMailUIContext extends AbstractBean implements Closeable, UIMes faxToMailActionFactory = new FaxToMailActionFactory(); faxToMailActionEngine = new ApplicationActionEngine(faxToMailActionFactory); - clientsCache = new HashMap<MailFolder, List<Client>>(); + clientsCache = new HashMap<String, List<Client>>(); } @Override @@ -845,17 +845,19 @@ public class FaxToMailUIContext extends AbstractBean implements Closeable, UIMes FaxToMailServiceContext serviceContext = newServiceContext(); ClientService clientService = serviceContext.getClientService(); - List<Client> clients = clientsCache.get(folder); + String company = clientService.getCompanyForFolder(folder); + + List<Client> clients = clientsCache.get(company); if (clients != null) { - long size = clientService.getClientsCountForFolder(folder); + long size = clientService.getClientsCountForCompany(company); if (size != clients.size()) { clients = null; } } if (clients == null) { - clients = clientService.getClientsForFolder(folder); - clientsCache.put(folder, clients); + clients = clientService.getClientsForCompany(company); + clientsCache.put(company, clients); } return clients; -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm