
nz.net.osnz.common.jawr.JawrConfig.groovy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of common-jawr Show documentation
Show all versions of common-jawr Show documentation
Provides web fragment and dependencies for jawr
The newest version!
package nz.net.osnz.common.jawr
import com.bluetrainsoftware.classpathscanner.ClasspathScanner
import net.jawr.web.resource.bundle.factory.util.ConfigPropertiesSource
import nz.ac.auckland.lmz.flags.Flags
import org.slf4j.Logger
import org.slf4j.LoggerFactory
/**
* This is an extend JawrConfig based on ResourceScanListener
*
* @author: Kefeng Deng ([email protected])
*/
public class JawrConfig implements ConfigPropertiesSource {
protected Logger log = LoggerFactory.getLogger(JawrConfig);
protected JawrResourceScanListener resourceScanListener;
Properties jawrProperties = new Properties();
protected boolean scanned = false;
public JawrConfig() {
resourceScanListener = new JawrResourceScanListener({ JawrResourceScanListener resourceScanListener ->
jawrProperties.putAll(resourceScanListener.config)
scanned = resourceScanListener.scanned
});
ClasspathScanner.getInstance().registerResourceScanner(resourceScanListener);
}
@Override
public Properties getConfigProperties() {
if (Flags.DEVMODE.on() || !scanned) {
log.debug("Reload all JAWR properties")
ClasspathScanner.getInstance().scan(getClass().getClassLoader(), true);
} else {
log.debug("Return all JAWR properties without reload them")
}
return jawrProperties;
}
@Override
public boolean configChanged() {
return Flags.DEVMODE.on();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy