remove unneeded synchronization locks on settings

This commit is contained in:
Athou
2013-09-08 19:00:57 +02:00
parent a7149e3740
commit dd94125d52

View File

@@ -3,7 +3,8 @@ package com.commafeed.backend.services;
import java.util.Date;
import java.util.Enumeration;
import javax.ejb.Singleton;
import javax.annotation.PostConstruct;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
import org.apache.commons.lang.time.DateUtils;
@@ -15,7 +16,7 @@ import com.commafeed.backend.dao.ApplicationSettingsDAO;
import com.commafeed.backend.model.ApplicationSettings;
import com.google.common.collect.Iterables;
@Singleton
@ApplicationScoped
public class ApplicationSettingsService {
@Inject
@@ -23,19 +24,21 @@ public class ApplicationSettingsService {
private ApplicationSettings settings;
public void save(ApplicationSettings settings) {
this.settings = settings;
applicationSettingsDAO.saveOrUpdate(settings);
applyLogLevel();
@PostConstruct
private void init() {
settings = Iterables.getFirst(applicationSettingsDAO.findAll(), null);
}
public ApplicationSettings get() {
if (settings == null) {
settings = Iterables.getFirst(applicationSettingsDAO.findAll(), null);
}
return settings;
}
public void save(ApplicationSettings settings) {
applicationSettingsDAO.saveOrUpdate(settings);
this.settings = settings;
applyLogLevel();
}
public Date getUnreadThreshold() {
int keepStatusDays = get().getKeepStatusDays();
return keepStatusDays > 0 ? DateUtils.addDays(new Date(), -1 * keepStatusDays) : null;