package com.mossle.api.user; import java.net.InetAddress; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; public class AccountLogClient { private ExecutorService executorService; private String server; private String url; @PostConstruct public void init() { try { server = InetAddress.getLocalHost().getHostAddress(); } catch (Exception ex) { ex.printStackTrace(); } executorService = Executors.newFixedThreadPool(10); } @PreDestroy public void close() { executorService.shutdown(); } public void log(String application, String result, String reason, String username, String client, String description) { try { AccountLogWorker accountLogWorker = new AccountLogWorker(); accountLogWorker.setUrl(url); accountLogWorker.setApplication(application); accountLogWorker.setUsername(username); accountLogWorker.setClient(client); accountLogWorker.setServer(server); accountLogWorker.setResult(result); accountLogWorker.setReason(reason); accountLogWorker.setDescription(description); executorService.execute(accountLogWorker); } catch (Exception ex) { ex.printStackTrace(); } } public void log(String result, String reason) { try { AccountLogDTO accountLogDto = AccountLogHolder.getAccountLogDto(); this.log(accountLogDto.getApplication(), result, reason, accountLogDto.getUsername(), accountLogDto.getClient(), accountLogDto.getDescription()); } catch (Exception ex) { ex.printStackTrace(); } } public void setUrl(String url) { this.url = url; } }