diff --git a/NzbDrone.Api/NancyBootstrapper.cs b/NzbDrone.Api/NancyBootstrapper.cs
index 5e44ee2ac..411a50c52 100644
--- a/NzbDrone.Api/NancyBootstrapper.cs
+++ b/NzbDrone.Api/NancyBootstrapper.cs
@@ -56,7 +56,6 @@ namespace NzbDrone.Api
try
{
initializable.Init();
-
}
catch (Exception e)
{
diff --git a/NzbDrone.Api/Series/SeriesModule.cs b/NzbDrone.Api/Series/SeriesModule.cs
index 02ed3638b..099ff27f5 100644
--- a/NzbDrone.Api/Series/SeriesModule.cs
+++ b/NzbDrone.Api/Series/SeriesModule.cs
@@ -8,7 +8,7 @@ using Nancy;
using NzbDrone.Api.Extensions;
using NzbDrone.Common;
using NzbDrone.Core.Datastore;
-using NzbDrone.Core.Jobs.Framework;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Tv;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Model;
diff --git a/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs b/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs
index ddbf582de..bbdccefab 100644
--- a/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs
+++ b/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs
@@ -5,6 +5,7 @@ using FluentAssertions;
using Moq;
using NUnit.Framework;
using NzbDrone.Core.Configuration;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Tv;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Model;
diff --git a/NzbDrone.Core.Test/JobTests/ImportNewSeriesJobTest.cs b/NzbDrone.Core.Test/JobTests/ImportNewSeriesJobTest.cs
index 270bdfa19..ee6c51bfe 100644
--- a/NzbDrone.Core.Test/JobTests/ImportNewSeriesJobTest.cs
+++ b/NzbDrone.Core.Test/JobTests/ImportNewSeriesJobTest.cs
@@ -6,6 +6,7 @@ using System.Collections.Generic;
using FizzWare.NBuilder;
using Moq;
using NUnit.Framework;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.MediaFiles;
using NzbDrone.Core.Tv;
using NzbDrone.Core.Jobs;
diff --git a/NzbDrone.Core.Test/JobTests/JobControllerFixture.cs b/NzbDrone.Core.Test/JobTests/JobControllerFixture.cs
index 68c70067d..b076f786c 100644
--- a/NzbDrone.Core.Test/JobTests/JobControllerFixture.cs
+++ b/NzbDrone.Core.Test/JobTests/JobControllerFixture.cs
@@ -7,7 +7,7 @@ using Moq;
using NCrunch.Framework;
using NUnit.Framework;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Model;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Test.Common;
diff --git a/NzbDrone.Core.Test/JobTests/JobRepositoryFixture.cs b/NzbDrone.Core.Test/JobTests/JobRepositoryFixture.cs
index 60bb40527..7d0685c66 100644
--- a/NzbDrone.Core.Test/JobTests/JobRepositoryFixture.cs
+++ b/NzbDrone.Core.Test/JobTests/JobRepositoryFixture.cs
@@ -10,7 +10,6 @@ using NCrunch.Framework;
using NUnit.Framework;
using NzbDrone.Common;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model;
using NzbDrone.Core.Repository;
using NzbDrone.Core.Test.Framework;
diff --git a/NzbDrone.Core.Test/JobTests/PostDownloadScanJobFixture.cs b/NzbDrone.Core.Test/JobTests/PostDownloadScanJobFixture.cs
index 986d8cf22..dd564d6e7 100644
--- a/NzbDrone.Core.Test/JobTests/PostDownloadScanJobFixture.cs
+++ b/NzbDrone.Core.Test/JobTests/PostDownloadScanJobFixture.cs
@@ -9,6 +9,7 @@ using NUnit.Framework;
using NzbDrone.Common;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Jobs;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Model;
using NzbDrone.Core.Providers;
using NzbDrone.Core.Test.Framework;
diff --git a/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs b/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs
index 60eaeae10..0fac43d3f 100644
--- a/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs
+++ b/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs
@@ -7,6 +7,7 @@ using FluentAssertions;
using Moq;
using NUnit.Framework;
using NzbDrone.Core.Configuration;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Tv;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Model;
diff --git a/NzbDrone.Core.Test/JobTests/RssSyncJobTest.cs b/NzbDrone.Core.Test/JobTests/RssSyncJobTest.cs
index b065efd73..c8e5a66cb 100644
--- a/NzbDrone.Core.Test/JobTests/RssSyncJobTest.cs
+++ b/NzbDrone.Core.Test/JobTests/RssSyncJobTest.cs
@@ -5,6 +5,7 @@ using Moq;
using NUnit.Framework;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Jobs;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Model.Notification;
using NzbDrone.Core.Providers;
using NzbDrone.Core.Test.Framework;
diff --git a/NzbDrone.Core.Test/JobTests/SeasonSearchJobTest.cs b/NzbDrone.Core.Test/JobTests/SeasonSearchJobTest.cs
index 5a02b1cda..a1cfb8802 100644
--- a/NzbDrone.Core.Test/JobTests/SeasonSearchJobTest.cs
+++ b/NzbDrone.Core.Test/JobTests/SeasonSearchJobTest.cs
@@ -5,6 +5,7 @@ using System.Linq;
using FizzWare.NBuilder;
using Moq;
using NUnit.Framework;
+using NzbDrone.Core.Jobs.Implementations;
using NzbDrone.Core.Tv;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Model;
diff --git a/NzbDrone.Core.Test/JobTests/TestJobs.cs b/NzbDrone.Core.Test/JobTests/TestJobs.cs
index 3cba3bff1..fe3a05ca0 100644
--- a/NzbDrone.Core.Test/JobTests/TestJobs.cs
+++ b/NzbDrone.Core.Test/JobTests/TestJobs.cs
@@ -2,7 +2,6 @@
using System.Linq;
using System.Threading;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model.Notification;
namespace NzbDrone.Core.Test.JobTests
diff --git a/NzbDrone.Core/ContainerExtentions.cs b/NzbDrone.Core/ContainerExtensions.cs
similarity index 95%
rename from NzbDrone.Core/ContainerExtentions.cs
rename to NzbDrone.Core/ContainerExtensions.cs
index 66b130e85..2f18a2e1e 100644
--- a/NzbDrone.Core/ContainerExtentions.cs
+++ b/NzbDrone.Core/ContainerExtensions.cs
@@ -3,10 +3,8 @@ using System.IO;
using System.Linq;
using System.Reflection;
using Autofac;
-using Autofac.Core;
using NLog;
using NzbDrone.Common;
-using NzbDrone.Common.Eventing;
using NzbDrone.Core.Datastore;
using NzbDrone.Core.ExternalNotification;
using NzbDrone.Core.Indexers;
@@ -15,7 +13,7 @@ using NzbDrone.Core.Providers.Search;
namespace NzbDrone.Core
{
- public static class ContainerExtentions
+ public static class ContainerExtensions
{
private static readonly Logger logger = LogManager.GetLogger("ServiceRegistration");
diff --git a/NzbDrone.Core/Instrumentation/TrimLogsJob.cs b/NzbDrone.Core/Instrumentation/TrimLogsJob.cs
index 057176de9..f25ff4dda 100644
--- a/NzbDrone.Core/Instrumentation/TrimLogsJob.cs
+++ b/NzbDrone.Core/Instrumentation/TrimLogsJob.cs
@@ -1,7 +1,6 @@
using System;
using System.Linq;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model.Notification;
namespace NzbDrone.Core.Instrumentation
diff --git a/NzbDrone.Core/Jobs/JobTimer.cs b/NzbDrone.Core/Jobs/JobTimer.cs
new file mode 100644
index 000000000..4c39388d3
--- /dev/null
+++ b/NzbDrone.Core/Jobs/JobTimer.cs
@@ -0,0 +1,26 @@
+using System.Timers;
+using NzbDrone.Core.Lifecycle;
+
+namespace NzbDrone.Core.Jobs
+{
+ public class JobTimer : IInitializable
+ {
+ private readonly IJobController _jobController;
+ private readonly Timer _timer;
+
+ public JobTimer(IJobController jobController)
+ {
+ _jobController = jobController;
+ _timer = new Timer();
+
+ }
+
+ public void Init()
+ {
+ _timer.Interval = 1000 * 30;
+ _timer.Elapsed += (o, args) => _jobController.EnqueueScheduled();
+ _timer.Start();
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/NzbDrone.Core/Lifecycle/AppRestartJob.cs b/NzbDrone.Core/Lifecycle/AppRestartJob.cs
index de761b08e..33643e5ae 100644
--- a/NzbDrone.Core/Lifecycle/AppRestartJob.cs
+++ b/NzbDrone.Core/Lifecycle/AppRestartJob.cs
@@ -3,7 +3,6 @@ using System.Linq;
using NLog;
using NzbDrone.Common;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model.Notification;
namespace NzbDrone.Core.Lifecycle
diff --git a/NzbDrone.Core/Lifecycle/AppShutdownJob.cs b/NzbDrone.Core/Lifecycle/AppShutdownJob.cs
index 36f62e9d9..62ef370cd 100644
--- a/NzbDrone.Core/Lifecycle/AppShutdownJob.cs
+++ b/NzbDrone.Core/Lifecycle/AppShutdownJob.cs
@@ -3,7 +3,6 @@ using System.Linq;
using NLog;
using NzbDrone.Common;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model.Notification;
namespace NzbDrone.Core.Lifecycle
diff --git a/NzbDrone.Core/Lifecycle/AppUpdateJob.cs b/NzbDrone.Core/Lifecycle/AppUpdateJob.cs
index 5def00cca..3b3817650 100644
--- a/NzbDrone.Core/Lifecycle/AppUpdateJob.cs
+++ b/NzbDrone.Core/Lifecycle/AppUpdateJob.cs
@@ -5,7 +5,6 @@ using System.IO;
using NLog;
using NzbDrone.Common;
using NzbDrone.Core.Jobs;
-using NzbDrone.Core.Jobs.Framework;
using NzbDrone.Core.Model.Notification;
using NzbDrone.Core.Providers;
diff --git a/NzbDrone.Core/NzbDrone.Core.csproj b/NzbDrone.Core/NzbDrone.Core.csproj
index 236d8a5aa..7304b73ca 100644
--- a/NzbDrone.Core/NzbDrone.Core.csproj
+++ b/NzbDrone.Core/NzbDrone.Core.csproj
@@ -183,7 +183,7 @@
-
+
@@ -204,14 +204,34 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
@@ -234,7 +254,6 @@
-
@@ -296,28 +315,11 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -496,7 +498,6 @@
-