package io.swagger.jaxrs.config; import java.util.Collection; import java.util.Collections; import java.util.HashSet; /** * The {@code ReaderConfig} interface defines configuration settings for * JAX-RS annotations reader. */ public class DefaultReaderConfig implements ReaderConfig { private boolean scanAllResources; private Collection<String> ignoredRoutes = Collections.emptySet(); /** * Creates default configuration. */ public DefaultReaderConfig() { } /** * Creates a copy of passed configuration. */ public DefaultReaderConfig(ReaderConfig src) { if (src == null) { return; } setScanAllResources(src.isScanAllResources()); setIgnoredRoutes(src.getIgnoredRoutes()); } @Override public boolean isScanAllResources() { return scanAllResources; } public void setScanAllResources(boolean scanAllResources) { this.scanAllResources = scanAllResources; } @Override public Collection<String> getIgnoredRoutes() { return ignoredRoutes; } public void setIgnoredRoutes(Collection<String> ignoredRoutes) { this.ignoredRoutes = ignoredRoutes == null || ignoredRoutes.isEmpty() ? Collections.<String>emptySet() : Collections.unmodifiableCollection(new HashSet<String>(ignoredRoutes)); } }