diff --git a/src/main/java/com/commafeed/backend/feeds/FeedRefreshTaskGiver.java b/src/main/java/com/commafeed/backend/feeds/FeedRefreshTaskGiver.java index 333366d7..0b196c59 100644 --- a/src/main/java/com/commafeed/backend/feeds/FeedRefreshTaskGiver.java +++ b/src/main/java/com/commafeed/backend/feeds/FeedRefreshTaskGiver.java @@ -22,6 +22,7 @@ import com.commafeed.backend.dao.FeedDAO; import com.commafeed.backend.model.Feed; import com.commafeed.backend.services.ApplicationSettingsService; import com.google.api.client.util.Maps; +import com.google.common.collect.Lists; import com.google.common.collect.Queues; @ApplicationScoped @@ -134,7 +135,12 @@ public class FeedRefreshTaskGiver { Date now = new Date(); int count = 3 * backgroundThreads; - List feeds = feedDAO.findNextUpdatable(count, getThreshold()); + List feeds = null; + if (applicationSettingsService.get().isCrawlingPaused()) { + feeds = Lists.newArrayList(); + } else { + feeds = feedDAO.findNextUpdatable(count, getThreshold()); + } int size = addQueue.size(); for (int i = 0; i < size; i++) { diff --git a/src/main/java/com/commafeed/backend/model/ApplicationSettings.java b/src/main/java/com/commafeed/backend/model/ApplicationSettings.java index 36ead44e..e6a18df3 100644 --- a/src/main/java/com/commafeed/backend/model/ApplicationSettings.java +++ b/src/main/java/com/commafeed/backend/model/ApplicationSettings.java @@ -34,6 +34,7 @@ public class ApplicationSettings extends AbstractModel { private String logLevel = Level.INFO.toString(); private boolean imageProxyEnabled; private int queryTimeout; + private boolean crawlingPaused; @Column(length = 255) private String announcement; @@ -191,4 +192,12 @@ public class ApplicationSettings extends AbstractModel { this.queryTimeout = queryTimeout; } + public boolean isCrawlingPaused() { + return crawlingPaused; + } + + public void setCrawlingPaused(boolean crawlingPaused) { + this.crawlingPaused = crawlingPaused; + } + } diff --git a/src/main/resources/changelogs/db.changelog-1.1.xml b/src/main/resources/changelogs/db.changelog-1.1.xml index 24d58c7c..9ae26e21 100644 --- a/src/main/resources/changelogs/db.changelog-1.1.xml +++ b/src/main/resources/changelogs/db.changelog-1.1.xml @@ -256,5 +256,14 @@ + + + + + + + + + diff --git a/src/main/webapp/templates/admin.settings.html b/src/main/webapp/templates/admin.settings.html index c333b4ae..7e0f3ab8 100644 --- a/src/main/webapp/templates/admin.settings.html +++ b/src/main/webapp/templates/admin.settings.html @@ -158,6 +158,12 @@ ng-model="settings.queryTimeout" /> +
+ +
+ +
+