Cleaning Quartz.NET integration, removing #ifs as now only Quartz.NET 2.0 supported
This commit is contained in:
@@ -15,12 +15,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Aop.2008", "..\..\sr
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.2008", "..\..\src\Spring\Spring.Data\Spring.Data.2008.csproj", "{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Scheduling.Quartz.2008", "..\..\src\Spring\Spring.Scheduling.Quartz\Spring.Scheduling.Quartz.2008.csproj", "{E823D54C-CE82-4868-929F-5F95A999F61E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Scheduling.Quartz.Tests.2008", "..\..\test\Spring\Spring.Scheduling.Quartz.Tests\Spring.Scheduling.Quartz.Tests.2008.csproj", "{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Scheduling.Quartz.Integration.Tests.2008", "..\..\test\Spring\Spring.Scheduling.Quartz.Integration.Tests\Spring.Scheduling.Quartz.Integration.Tests.2008.csproj", "{E4328F68-C3FC-43E2-9D63-30CEC55215B0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Core.Tests.2008", "..\..\test\Spring\Spring.Core.Tests\Spring.Core.Tests.2008.csproj", "{44B16BAA-6DF8-447C-9D7F-3AD3D854D904}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Scheduling.Quartz20.Integration.Tests.2008", "..\..\test\Spring\Spring.Scheduling.Quartz20.Integration.Tests\Spring.Scheduling.Quartz20.Integration.Tests.2008.csproj", "{8CF0F34A-CC93-4D87-AE14-A2DEEF072F26}"
|
||||
@@ -75,36 +69,6 @@ Global
|
||||
{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Debug|.NET.ActiveCfg = Debug|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Release|.NET.ActiveCfg = Release|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Debug|.NET.ActiveCfg = Debug|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Release|.NET.ActiveCfg = Release|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Debug|.NET.ActiveCfg = Debug|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Release|.NET.ActiveCfg = Release|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{44B16BAA-6DF8-447C-9D7F-3AD3D854D904}.Debug|.NET.ActiveCfg = Debug|Any CPU
|
||||
{44B16BAA-6DF8-447C-9D7F-3AD3D854D904}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{44B16BAA-6DF8-447C-9D7F-3AD3D854D904}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
@@ -153,10 +117,7 @@ Global
|
||||
{710961A3-0DF4-49E4-A26E-F5B9C044AC84} = {438FE108-6F55-4C8A-8BF4-C85D0906D134}
|
||||
{3A3A4E65-45A6-4B20-B460-0BEDC302C02C} = {438FE108-6F55-4C8A-8BF4-C85D0906D134}
|
||||
{AE00E5AB-C39A-436F-86D2-33BFE33E2E40} = {438FE108-6F55-4C8A-8BF4-C85D0906D134}
|
||||
{E823D54C-CE82-4868-929F-5F95A999F61E} = {438FE108-6F55-4C8A-8BF4-C85D0906D134}
|
||||
{764C3A6A-8690-49DD-B9AF-99E7C09AE4F0} = {438FE108-6F55-4C8A-8BF4-C85D0906D134}
|
||||
{9FE720ED-2BD9-4FB9-89C8-FFFA4A491CB5} = {5ECE7B2B-6975-4800-982E-618794909499}
|
||||
{E4328F68-C3FC-43E2-9D63-30CEC55215B0} = {5ECE7B2B-6975-4800-982E-618794909499}
|
||||
{44B16BAA-6DF8-447C-9D7F-3AD3D854D904} = {5ECE7B2B-6975-4800-982E-618794909499}
|
||||
{8CF0F34A-CC93-4D87-AE14-A2DEEF072F26} = {5ECE7B2B-6975-4800-982E-618794909499}
|
||||
{47E7DF97-2515-4F2F-BBFD-0A4C205800DE} = {5ECE7B2B-6975-4800-982E-618794909499}
|
||||
|
||||
@@ -20,12 +20,6 @@ using Quartz;
|
||||
using Quartz.Spi;
|
||||
using Quartz.Util;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.IJobDetail;
|
||||
#else
|
||||
using JobDetail = Quartz.JobDetail;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -38,7 +32,6 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <seealso cref="AdaptJob(object)" />
|
||||
public class AdaptableJobFactory : IJobFactory
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// Called by the scheduler at the time of the trigger firing, in order to
|
||||
/// produce a <see cref="IJob"/> instance on which to call Execute.
|
||||
@@ -52,32 +45,12 @@ namespace Spring.Scheduling.Quartz
|
||||
/// intervention (e.g. an application restart after fixing whatever
|
||||
/// configuration problem led to the issue wih instantiating the Job.
|
||||
/// </remarks>
|
||||
/// <param name="bundle">The TriggerFiredBundle from which the <see cref="JobDetail"/>
|
||||
/// <param name="bundle">The TriggerFiredBundle from which the <see cref="IJobDetail"/>
|
||||
/// and other info relating to the trigger firing can be obtained.</param>
|
||||
/// <param name="scheduler">The scheduler instance.</param>
|
||||
/// <returns>the newly instantiated Job</returns>
|
||||
/// <throws>SchedulerException if there is a problem instantiating the Job.</throws>
|
||||
public virtual IJob NewJob(TriggerFiredBundle bundle, IScheduler scheduler)
|
||||
#else
|
||||
/// <summary>
|
||||
/// Called by the scheduler at the time of the trigger firing, in order to
|
||||
/// produce a <see cref="IJob"/> instance on which to call Execute.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// It should be extremely rare for this method to throw an exception -
|
||||
/// basically only the the case where there is no way at all to instantiate
|
||||
/// and prepare the Job for execution. When the exception is thrown, the
|
||||
/// Scheduler will move all triggers associated with the Job into the
|
||||
/// <see cref="TriggerState.Error"/> state, which will require human
|
||||
/// intervention (e.g. an application restart after fixing whatever
|
||||
/// configuration problem led to the issue wih instantiating the Job.
|
||||
/// </remarks>
|
||||
/// <param name="bundle">The TriggerFiredBundle from which the <see cref="JobDetail"/>
|
||||
/// and other info relating to the trigger firing can be obtained.</param>
|
||||
/// <returns>the newly instantiated Job</returns>
|
||||
/// <throws>SchedulerException if there is a problem instantiating the Job.</throws>
|
||||
public virtual IJob NewJob(TriggerFiredBundle bundle)
|
||||
#endif
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -103,11 +76,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <returns>The job instance.</returns>
|
||||
protected virtual object CreateJobInstance(TriggerFiredBundle bundle)
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
return ObjectUtils.InstantiateType<object>(bundle.JobDetail.JobType);
|
||||
#else
|
||||
return ObjectUtils.InstantiateType(bundle.JobDetail.JobType);
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -140,7 +140,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
set
|
||||
{
|
||||
AssertUtils.State(value > TimeSpan.Zero, "Start delay cannot be negative.");
|
||||
AssertUtils.State(value >= TimeSpan.Zero, "Start delay cannot be negative.");
|
||||
startDelay = value;
|
||||
}
|
||||
get { return startDelay; }
|
||||
@@ -174,17 +174,10 @@ namespace Spring.Scheduling.Quartz
|
||||
/// </exception>
|
||||
public virtual void AfterPropertiesSet()
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
if (StartTimeUtc == DateTimeOffset.MinValue)
|
||||
{
|
||||
StartTimeUtc = DateTimeOffset.UtcNow;
|
||||
}
|
||||
#else
|
||||
if (StartTimeUtc == DateTime.MinValue)
|
||||
{
|
||||
StartTimeUtc = DateTime.UtcNow;
|
||||
}
|
||||
#endif
|
||||
if (StartDelay > TimeSpan.Zero)
|
||||
{
|
||||
StartTimeUtc = DateTime.UtcNow.Add(startDelay);
|
||||
|
||||
@@ -19,12 +19,6 @@ using Quartz;
|
||||
|
||||
using Spring.Util;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
#else
|
||||
using JobExecutionContext = Quartz.JobExecutionContext;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -39,7 +33,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <author>Juergen Hoeller</author>
|
||||
/// <author>Marko Lahma (.NET)</author>
|
||||
/// <seealso cref="SpringObjectJobFactory" />
|
||||
/// <seealso cref="IJob.Execute(JobExecutionContext)" />
|
||||
/// <seealso cref="IJob.Execute(IJobExecutionContext)" />
|
||||
public class DelegatingJob : IJob
|
||||
{
|
||||
private readonly ThreadStart delegateInstance;
|
||||
@@ -69,7 +63,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <summary>
|
||||
/// Delegates execution to the underlying ThreadStart.
|
||||
/// </summary>
|
||||
public virtual void Execute(JobExecutionContext context)
|
||||
public virtual void Execute(IJobExecutionContext context)
|
||||
{
|
||||
delegateInstance.Invoke();
|
||||
}
|
||||
|
||||
@@ -14,11 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.IJobDetail;
|
||||
#else
|
||||
using JobDetail = Quartz.JobDetail;
|
||||
#endif
|
||||
using Quartz;
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
@@ -47,6 +43,6 @@ namespace Spring.Scheduling.Quartz
|
||||
/// Return the JobDetail that this Trigger is associated with.
|
||||
/// </summary>
|
||||
/// <returns>The associated JobDetail, or <code>null</code> if none</returns>
|
||||
JobDetail JobDetail { get; }
|
||||
IJobDetail JobDetail { get; }
|
||||
}
|
||||
}
|
||||
@@ -23,12 +23,6 @@ using Quartz;
|
||||
|
||||
using Spring.Objects.Support;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
#else
|
||||
using JobExecutionContext = Quartz.JobExecutionContext;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -64,7 +58,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// Invoke the method via the MethodInvoker.
|
||||
/// </summary>
|
||||
/// <param name="context"></param>
|
||||
protected override void ExecuteInternal(JobExecutionContext context)
|
||||
protected override void ExecuteInternal(IJobExecutionContext context)
|
||||
{
|
||||
if (methodInvoker == null)
|
||||
{
|
||||
|
||||
@@ -17,12 +17,6 @@ using Quartz;
|
||||
|
||||
using Spring.Objects;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
#else
|
||||
using JobExecutionContext = Quartz.JobExecutionContext;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -48,7 +42,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// </p>
|
||||
/// </remarks>
|
||||
/// <author>Juergen Hoeller</author>
|
||||
/// <seealso cref="JobExecutionContext.MergedJobDataMap" />
|
||||
/// <seealso cref="IJobExecutionContext.MergedJobDataMap" />
|
||||
/// <seealso cref="IScheduler.Context" />
|
||||
/// <seealso cref="JobDetailObject.JobDataAsMap" />
|
||||
/// <seealso cref="CronTriggerObject.JobDataAsMap" />
|
||||
@@ -62,7 +56,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// values, and delegates to <code>ExecuteInternal</code> afterwards.
|
||||
/// </summary>
|
||||
/// <seealso cref="ExecuteInternal" />
|
||||
public void Execute(JobExecutionContext context)
|
||||
public void Execute(IJobExecutionContext context)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -85,6 +79,6 @@ namespace Spring.Scheduling.Quartz
|
||||
/// exactly the same as for the standard Quartz execute method.
|
||||
/// </summary>
|
||||
/// <seealso cref="Execute" />
|
||||
protected abstract void ExecuteInternal(JobExecutionContext context);
|
||||
protected abstract void ExecuteInternal(IJobExecutionContext context);
|
||||
}
|
||||
}
|
||||
@@ -18,9 +18,7 @@ using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Specialized;
|
||||
using System.IO;
|
||||
#if QUARTZ_2_0
|
||||
using System.Linq;
|
||||
#endif
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
@@ -569,11 +567,7 @@ namespace Spring.Scheduling.Quartz
|
||||
public virtual void AfterPropertiesSet()
|
||||
{
|
||||
// Create SchedulerFactory instance.
|
||||
#if QUARTZ_2_0
|
||||
ISchedulerFactory schedulerFactory = ObjectUtils.InstantiateType<ISchedulerFactory>(schedulerFactoryType);
|
||||
#else
|
||||
ISchedulerFactory schedulerFactory = (ISchedulerFactory) ObjectUtils.InstantiateType(schedulerFactoryType);
|
||||
#endif
|
||||
|
||||
InitSchedulerFactory(schedulerFactory);
|
||||
|
||||
@@ -762,12 +756,8 @@ namespace Spring.Scheduling.Quartz
|
||||
// Put specified objects into Scheduler context.
|
||||
if (schedulerContextMap != null)
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
var dictionary = schedulerContextMap.Cast<DictionaryEntry>().ToDictionary(entry => entry.Key.ToString(), entry => entry.Value);
|
||||
scheduler.Context.PutAll(dictionary);
|
||||
#else
|
||||
scheduler.Context.PutAll(schedulerContextMap);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Register IApplicationContext in Scheduler context.
|
||||
|
||||
@@ -15,8 +15,10 @@
|
||||
*/
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl.Triggers;
|
||||
|
||||
using Spring.Objects.Factory;
|
||||
using Spring.Util;
|
||||
|
||||
@@ -115,7 +117,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
set
|
||||
{
|
||||
AssertUtils.State(value > TimeSpan.Zero, "Start delay cannot be negative.");
|
||||
AssertUtils.State(value >= TimeSpan.Zero, "Start delay cannot be negative.");
|
||||
startDelay = value;
|
||||
}
|
||||
get { return startDelay; }
|
||||
@@ -181,17 +183,10 @@ namespace Spring.Scheduling.Quartz
|
||||
/// </exception>
|
||||
public virtual void AfterPropertiesSet()
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
if (StartTimeUtc == DateTimeOffset.MinValue)
|
||||
{
|
||||
StartTimeUtc = DateTimeOffset.UtcNow;
|
||||
}
|
||||
#else
|
||||
if (StartTimeUtc == DateTime.MinValue)
|
||||
{
|
||||
StartTimeUtc = DateTime.UtcNow;
|
||||
}
|
||||
#endif
|
||||
if (StartDelay > TimeSpan.Zero)
|
||||
{
|
||||
StartTimeUtc = DateTime.UtcNow.Add(startDelay);
|
||||
|
||||
@@ -18,7 +18,6 @@ using System;
|
||||
using System.Data;
|
||||
using System.Reflection;
|
||||
|
||||
using Quartz.Impl.AdoJobStore;
|
||||
using Quartz.Impl.AdoJobStore.Common;
|
||||
|
||||
using IDbMetadata=Spring.Data.Common.IDbMetadata;
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;NET_2_0,NET_3_0,NET_3_5,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz\Debug\Spring.Scheduling.Quartz20.XML</DocumentationFile>
|
||||
@@ -26,7 +26,7 @@
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;NET_2_0,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2010\Spring.Scheduling.Quartz20\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;NET_4_0,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG;NET_4_0</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>..\..\..\build\VS.NET.2010\Spring.Scheduling.Quartz20\Debug\Spring.Scheduling.Quartz20.XML</DocumentationFile>
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20.Integration.Tests\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;NET_2_0;NET_3_5</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
@@ -24,7 +24,7 @@
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20.Integration.Tests\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;NET_2_0;NET_3_5</DefineConstants>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
@@ -69,6 +69,14 @@
|
||||
<Project>{710961A3-0DF4-49E4-A26E-F5B9C044AC84}</Project>
|
||||
<Name>Spring.Core.2008</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\..\src\Spring\Spring.Data\Spring.Data.2008.csproj">
|
||||
<Project>{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}</Project>
|
||||
<Name>Spring.Data.2008</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\..\src\Spring\Spring.Scheduling.Quartz20\Spring.Scheduling.Quartz20.2008.csproj">
|
||||
<Project>{764C3A6A-8690-49DD-B9AF-99E7C09AE4F0}</Project>
|
||||
<Name>Spring.Scheduling.Quartz20.2008</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
@@ -13,8 +13,11 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
using System;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Job;
|
||||
using Quartz.Spi;
|
||||
@@ -49,11 +52,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
// this actually fails already in Quartz level
|
||||
TriggerFiredBundle bundle = TestUtil.CreateMinimalFiredBundleWithTypedJobDetail(typeof (object));
|
||||
#if QUARTZ_2_0
|
||||
jobFactory.NewJob(bundle, null);
|
||||
#else
|
||||
jobFactory.NewJob(bundle);
|
||||
#endif
|
||||
Assert.Fail("Created job which was not an IJob");
|
||||
}
|
||||
catch (ArgumentException)
|
||||
@@ -86,11 +85,7 @@ namespace Spring.Scheduling.Quartz
|
||||
public void TestNewJob_NormalIJob()
|
||||
{
|
||||
TriggerFiredBundle bundle = TestUtil.CreateMinimalFiredBundleWithTypedJobDetail(typeof (NoOpJob));
|
||||
#if QUARTZ_2_0
|
||||
IJob job = jobFactory.NewJob(bundle, null);
|
||||
#else
|
||||
IJob job = jobFactory.NewJob(bundle);
|
||||
#endif
|
||||
|
||||
Assert.IsNotNull(job, "Returned job was null");
|
||||
}
|
||||
|
||||
@@ -17,14 +17,13 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Job;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
@@ -70,7 +69,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
const string jobName = "jobName";
|
||||
const string jobGroup = "jobGroup";
|
||||
JobDetail jd = new JobDetail(jobName, jobGroup, typeof (NoOpJob));
|
||||
IJobDetail jd = new JobDetailImpl(jobName, jobGroup, typeof(NoOpJob));
|
||||
cronTrigger.JobDetail = jd;
|
||||
cronTrigger.AfterPropertiesSet();
|
||||
base.TestAfterPropertiesSet_JobDetailGiven();
|
||||
@@ -83,11 +82,7 @@ namespace Spring.Scheduling.Quartz
|
||||
[Test]
|
||||
public void TestJobDataAsMap()
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
IDictionary data = new Dictionary<string, object>();
|
||||
#else
|
||||
Hashtable data = new Hashtable();
|
||||
#endif
|
||||
data["foo"] = "bar";
|
||||
data["number"] = 123;
|
||||
cronTrigger.JobDataAsMap = data;
|
||||
|
||||
@@ -18,9 +18,6 @@ using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
@@ -53,14 +50,11 @@ namespace Spring.Scheduling.Quartz
|
||||
public void TestGetObject_MinimalDefaults()
|
||||
{
|
||||
factory.AfterPropertiesSet();
|
||||
JobDetail jd = (JobDetail) factory.GetObject();
|
||||
IJobDetail jd = (IJobDetail) factory.GetObject();
|
||||
Assert.IsNotNull(jd, "job detail was null");
|
||||
Assert.AreEqual(FACTORY_NAME, jd.Name, "job name did not default to factory name");
|
||||
Assert.AreEqual(FACTORY_NAME, jd.Key.Name, "job name did not default to factory name");
|
||||
Assert.AreEqual(jd.JobType, typeof(MethodInvokingJob), "factory did not create method invoking job");
|
||||
Assert.IsTrue(jd.Durable, "job was not durable");
|
||||
#if !QUARTZ_2_0
|
||||
Assert.IsTrue(jd.Volatile, "job was not volatile");
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -71,25 +65,9 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
factory.Concurrent = false;
|
||||
factory.AfterPropertiesSet();
|
||||
JobDetail jd = (JobDetail)factory.GetObject();
|
||||
IJobDetail jd = (IJobDetail)factory.GetObject();
|
||||
Assert.IsNotNull(jd, "job detail was null");
|
||||
Assert.AreEqual(jd.JobType, typeof(StatefulMethodInvokingJob), "factory did not create stateful method invoking job");
|
||||
}
|
||||
|
||||
#if !QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// Tests JobDetail retrieval and it's set properties.
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestGetObject_TriggerListenersSet()
|
||||
{
|
||||
string[] LISTENER_NAMES = new string[] {"Foo", "Bar"};
|
||||
factory.JobListenerNames = LISTENER_NAMES;
|
||||
factory.AfterPropertiesSet();
|
||||
JobDetail jd = (JobDetail)factory.GetObject();
|
||||
CollectionAssert.AreEquivalent(LISTENER_NAMES, jd.JobListenerNames);
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,8 @@ using System.Threading;
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Impl.Triggers;
|
||||
using Quartz.Job;
|
||||
using Quartz.Spi;
|
||||
|
||||
@@ -27,12 +29,6 @@ using Rhino.Mocks;
|
||||
|
||||
using Spring.Objects.Support;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobExecutionContext = Quartz.Impl.JobExecutionContextImpl;
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
using SimpleTrigger = Quartz.Impl.Triggers.SimpleTriggerImpl;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -101,7 +97,7 @@ namespace Spring.Scheduling.Quartz
|
||||
mi.TargetMethod = "InvokeWithReturnValue";
|
||||
mi.Prepare();
|
||||
methodInvokingJob.MethodInvoker = mi;
|
||||
JobExecutionContext context = CreateMinimalJobExecutionContext();
|
||||
IJobExecutionContext context = CreateMinimalJobExecutionContext();
|
||||
methodInvokingJob.Execute(context);
|
||||
|
||||
Assert.AreEqual(InvocationCountingJob.DefaultReturnValue, context.Result, "result value was not set to context");
|
||||
@@ -146,18 +142,18 @@ namespace Spring.Scheduling.Quartz
|
||||
methodInvokingJob.Execute(CreateMinimalJobExecutionContext());
|
||||
}
|
||||
|
||||
private static JobExecutionContext CreateMinimalJobExecutionContext()
|
||||
private static IJobExecutionContext CreateMinimalJobExecutionContext()
|
||||
{
|
||||
MockRepository repo = new MockRepository();
|
||||
IScheduler sched = (IScheduler) repo.DynamicMock(typeof (IScheduler));
|
||||
JobExecutionContext ctx = new JobExecutionContext(sched, ConstructMinimalTriggerFiredBundle(), null);
|
||||
IScheduler sched = (IScheduler)repo.DynamicMock(typeof(IScheduler));
|
||||
IJobExecutionContext ctx = new JobExecutionContextImpl(sched, ConstructMinimalTriggerFiredBundle(), null);
|
||||
return ctx;
|
||||
}
|
||||
|
||||
private static TriggerFiredBundle ConstructMinimalTriggerFiredBundle()
|
||||
{
|
||||
JobDetail jd = new JobDetail("jobName", "jobGroup", typeof(NoOpJob));
|
||||
SimpleTrigger trigger = new SimpleTrigger("triggerName", "triggerGroup");
|
||||
IJobDetail jd = new JobDetailImpl("jobName", "jobGroup", typeof(NoOpJob));
|
||||
IOperableTrigger trigger = new SimpleTriggerImpl("triggerName", "triggerGroup");
|
||||
TriggerFiredBundle retValue = new TriggerFiredBundle(jd, trigger, null, false, null, null, null, null);
|
||||
|
||||
return retValue;
|
||||
|
||||
@@ -22,6 +22,7 @@ using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Impl.Triggers;
|
||||
using Quartz.Spi;
|
||||
|
||||
using Rhino.Mocks;
|
||||
@@ -30,14 +31,6 @@ using Spring.Context.Support;
|
||||
using Spring.Objects;
|
||||
using Spring.Objects.Factory.Support;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using CronTrigger = Quartz.Impl.Triggers.CronTriggerImpl;
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
using SimpleTrigger = Quartz.Impl.Triggers.SimpleTriggerImpl;
|
||||
using Trigger = Quartz.ITrigger;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -111,7 +104,7 @@ namespace Spring.Scheduling.Quartz
|
||||
}
|
||||
mijdfb.TargetMethod = ("doSomething");
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail1 = (JobDetail) mijdfb.GetObject();
|
||||
IJobDetail jobDetail1 = (IJobDetail) mijdfb.GetObject();
|
||||
|
||||
SimpleTriggerObject trigger1 = new SimpleTriggerObject();
|
||||
trigger1.ObjectName = ("myTrigger1");
|
||||
@@ -131,9 +124,9 @@ namespace Spring.Scheduling.Quartz
|
||||
schedulerFactoryObject.SchedulerContextAsMap = (schedulerContext);
|
||||
if (explicitJobDetail)
|
||||
{
|
||||
schedulerFactoryObject.JobDetails = (new JobDetail[] {jobDetail0});
|
||||
schedulerFactoryObject.JobDetails = (new IJobDetail[] {jobDetail0});
|
||||
}
|
||||
schedulerFactoryObject.Triggers = (new Trigger[] {trigger0, trigger1});
|
||||
schedulerFactoryObject.Triggers = (new ITrigger[] {trigger0, trigger1});
|
||||
try
|
||||
{
|
||||
schedulerFactoryObject.AfterPropertiesSet();
|
||||
@@ -196,7 +189,7 @@ namespace Spring.Scheduling.Quartz
|
||||
mijdfb.TargetObject = (task1);
|
||||
mijdfb.TargetMethod = ("doSomething");
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail1 = (JobDetail) mijdfb.GetObject();
|
||||
IJobDetail jobDetail1 = (IJobDetail) mijdfb.GetObject();
|
||||
|
||||
SimpleTriggerObject trigger1 = new SimpleTriggerObject();
|
||||
trigger1.ObjectName = ("myTrigger1");
|
||||
@@ -207,18 +200,11 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
IScheduler scheduler = MockRepository.GenerateMock<IScheduler>();
|
||||
scheduler.Stub(x => x.Context).Return(new SchedulerContext());
|
||||
#if QUARTZ_2_0
|
||||
scheduler.Stub(x => x.GetTrigger(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup))).Return(new SimpleTrigger());
|
||||
#else
|
||||
scheduler.Stub(x => x.GetTrigger("myTrigger1", SchedulerConstants.DefaultGroup)).Return(new SimpleTrigger());
|
||||
#endif
|
||||
scheduler.Stub(x => x.GetTrigger(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup))).Return(new SimpleTriggerImpl());
|
||||
|
||||
if (overwrite)
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
scheduler.Stub(x => x.RescheduleJob(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup), trigger1)).Return(DateTime.UtcNow);
|
||||
#else
|
||||
scheduler.Stub(x => x.RescheduleJob("myTrigger1", SchedulerConstants.DefaultGroup, trigger1)).Return(DateTime.UtcNow);
|
||||
#endif
|
||||
}
|
||||
|
||||
SchedulerFactoryObject schedulerFactoryObject = new TestSchedulerFactoryObject(scheduler);
|
||||
@@ -226,7 +212,7 @@ namespace Spring.Scheduling.Quartz
|
||||
IDictionary schedulerContext = new Hashtable();
|
||||
schedulerContext.Add("otherTestObject", tb);
|
||||
schedulerFactoryObject.SchedulerContextAsMap = (schedulerContext);
|
||||
schedulerFactoryObject.Triggers = (new Trigger[] {trigger0, trigger1});
|
||||
schedulerFactoryObject.Triggers = (new ITrigger[] {trigger0, trigger1});
|
||||
if (overwrite)
|
||||
{
|
||||
schedulerFactoryObject.OverwriteExistingJobs = (true);
|
||||
@@ -289,7 +275,7 @@ namespace Spring.Scheduling.Quartz
|
||||
mijdfb.TargetObject = (task1);
|
||||
mijdfb.TargetMethod = ("doSomething");
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail1 = (JobDetail) mijdfb.GetObject();
|
||||
IJobDetail jobDetail1 = (IJobDetail) mijdfb.GetObject();
|
||||
|
||||
SimpleTriggerObject trigger1 = new SimpleTriggerObject();
|
||||
trigger1.ObjectName = ("myTrigger1");
|
||||
@@ -300,30 +286,18 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
IScheduler scheduler = MockRepository.GenerateMock<IScheduler>();
|
||||
scheduler.Stub(x => x.Context).Return(new SchedulerContext());
|
||||
#if QUARTZ_2_0
|
||||
scheduler.Stub(x => x.GetTrigger(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup))).Return(new SimpleTrigger());
|
||||
#else
|
||||
scheduler.Stub(x => x.GetTrigger("myTrigger1", SchedulerConstants.DefaultGroup)).Return(new SimpleTrigger());
|
||||
#endif
|
||||
scheduler.Stub(x => x.GetTrigger(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup))).Return(new SimpleTriggerImpl());
|
||||
if (overwrite)
|
||||
{
|
||||
scheduler.AddJob(jobDetail1, true);
|
||||
#if QUARTZ_2_0
|
||||
scheduler.Stub(x => x.RescheduleJob(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup), trigger1)).Return(DateTime.UtcNow);
|
||||
#else
|
||||
scheduler.Stub(x => x.RescheduleJob("myTrigger1", SchedulerConstants.DefaultGroup, trigger1)).Return(DateTime.UtcNow);
|
||||
#endif
|
||||
}
|
||||
|
||||
scheduler.Stub(x => x.ScheduleJob(trigger0)).Throw(new ObjectAlreadyExistsException(""));
|
||||
|
||||
if (overwrite)
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
scheduler.Stub(x => x.RescheduleJob(new TriggerKey("myTrigger0", SchedulerConstants.DefaultGroup), trigger0)).Return(DateTime.UtcNow);
|
||||
#else
|
||||
scheduler.Stub(x => x.RescheduleJob("myTrigger0", SchedulerConstants.DefaultGroup, trigger0)).Return(DateTime.UtcNow);
|
||||
#endif
|
||||
}
|
||||
|
||||
scheduler.Start();
|
||||
@@ -335,7 +309,7 @@ namespace Spring.Scheduling.Quartz
|
||||
IDictionary schedulerContext = new Hashtable();
|
||||
schedulerContext.Add("otherTestObject", tb);
|
||||
schedulerFactoryObject.SchedulerContextAsMap = (schedulerContext);
|
||||
schedulerFactoryObject.Triggers = (new Trigger[] {trigger0, trigger1});
|
||||
schedulerFactoryObject.Triggers = (new ITrigger[] {trigger0, trigger1});
|
||||
if (overwrite)
|
||||
{
|
||||
schedulerFactoryObject.OverwriteExistingJobs = (true);
|
||||
@@ -354,62 +328,7 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
}
|
||||
|
||||
#if !QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestSchedulerFactoryObjectWithListeners()
|
||||
{
|
||||
IJobFactory jobFactory = new AdaptableJobFactory();
|
||||
|
||||
IScheduler scheduler = MockRepository.GenerateMock<IScheduler>();
|
||||
|
||||
ISchedulerListener schedulerListener = new TestSchedulerListener();
|
||||
IJobListener globalJobListener = new TestJobListener();
|
||||
IJobListener jobListener = new TestJobListener();
|
||||
ITriggerListener globalTriggerListener = new TestTriggerListener();
|
||||
ITriggerListener triggerListener = new TestTriggerListener();
|
||||
|
||||
Expect.Call(scheduler.JobFactory = (jobFactory));
|
||||
scheduler.AddSchedulerListener(schedulerListener);
|
||||
scheduler.AddGlobalJobListener(globalJobListener);
|
||||
scheduler.AddJobListener(jobListener);
|
||||
scheduler.AddGlobalTriggerListener(globalTriggerListener);
|
||||
scheduler.AddTriggerListener(triggerListener);
|
||||
scheduler.Start();
|
||||
scheduler.Shutdown(false);
|
||||
|
||||
SchedulerFactoryObject schedulerFactoryObject = new TestSchedulerFactoryObject(scheduler);
|
||||
|
||||
schedulerFactoryObject.JobFactory = (jobFactory);
|
||||
schedulerFactoryObject.SchedulerListeners = (new ISchedulerListener[] {schedulerListener});
|
||||
schedulerFactoryObject.GlobalJobListeners = (new IJobListener[] {globalJobListener});
|
||||
schedulerFactoryObject.JobListeners = (new IJobListener[] {jobListener});
|
||||
schedulerFactoryObject.GlobalTriggerListeners = (new ITriggerListener[] {globalTriggerListener});
|
||||
schedulerFactoryObject.TriggerListeners = (new ITriggerListener[] {triggerListener});
|
||||
try
|
||||
{
|
||||
schedulerFactoryObject.AfterPropertiesSet();
|
||||
schedulerFactoryObject.Start();
|
||||
}
|
||||
finally
|
||||
{
|
||||
schedulerFactoryObject.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
/*public void TestMethodInvocationWithConcurrency() {
|
||||
methodInvokingConcurrency(true);
|
||||
}*/
|
||||
|
||||
// We can't test both since Quartz somehow seems to keep things in memory
|
||||
// enable both and one of them will fail (order doesn't matter).
|
||||
/*public void TestMethodInvocationWithoutConcurrency() {
|
||||
methodInvokingConcurrency(false);
|
||||
}*/
|
||||
|
||||
private void methodInvokingConcurrency(bool concurrent)
|
||||
private void MethodInvokingConcurrency(bool concurrent)
|
||||
{
|
||||
// Test the concurrency flag.
|
||||
// Method invoking job with two triggers.
|
||||
@@ -424,7 +343,7 @@ namespace Spring.Scheduling.Quartz
|
||||
mijdfb.TargetObject = (task1);
|
||||
mijdfb.TargetMethod = ("doWait");
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail1 = (JobDetail) mijdfb.GetObject();
|
||||
IJobDetail jobDetail1 = (IJobDetail) mijdfb.GetObject();
|
||||
|
||||
SimpleTriggerObject trigger0 = new SimpleTriggerObject();
|
||||
trigger0.ObjectName = ("myTrigger1");
|
||||
@@ -443,8 +362,8 @@ namespace Spring.Scheduling.Quartz
|
||||
trigger1.AfterPropertiesSet();
|
||||
|
||||
SchedulerFactoryObject schedulerFactoryObject = new SchedulerFactoryObject();
|
||||
schedulerFactoryObject.JobDetails = (new JobDetail[] {jobDetail1});
|
||||
schedulerFactoryObject.Triggers = (new Trigger[] {trigger1, trigger0});
|
||||
schedulerFactoryObject.JobDetails = (new IJobDetail[] {jobDetail1});
|
||||
schedulerFactoryObject.Triggers = (new ITrigger[] {trigger1, trigger0});
|
||||
schedulerFactoryObject.AfterPropertiesSet();
|
||||
|
||||
// ok scheduler is set up... let's wait for like 4 seconds
|
||||
@@ -497,14 +416,14 @@ namespace Spring.Scheduling.Quartz
|
||||
IJobFactory jobFactory = new AdaptableJobFactory();
|
||||
|
||||
TestObject tb = new TestObject("tb", 99);
|
||||
JobDetail jobDetail0 = new JobDetail();
|
||||
JobDetailImpl jobDetail0 = new JobDetailImpl();
|
||||
jobDetail0.JobType = typeof (IJob);
|
||||
jobDetail0.Name = ("myJob0");
|
||||
jobDetail0.Group = (SchedulerConstants.DefaultGroup);
|
||||
jobDetail0.JobDataMap.Add("testObject", tb);
|
||||
Assert.AreEqual(tb, jobDetail0.JobDataMap.Get("testObject"));
|
||||
|
||||
CronTrigger trigger0 = new CronTrigger();
|
||||
CronTriggerImpl trigger0 = new CronTriggerImpl();
|
||||
trigger0.Name = ("myTrigger0");
|
||||
trigger0.Group = SchedulerConstants.DefaultGroup;
|
||||
trigger0.JobName = "myJob0";
|
||||
@@ -519,15 +438,15 @@ namespace Spring.Scheduling.Quartz
|
||||
mijdfb.TargetObject = (task1);
|
||||
mijdfb.TargetMethod = ("doSomething");
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail1 = (JobDetail) mijdfb.GetObject();
|
||||
IJobDetail jobDetail1 = (IJobDetail) mijdfb.GetObject();
|
||||
|
||||
SimpleTrigger trigger1 = new SimpleTrigger();
|
||||
SimpleTriggerImpl trigger1 = new SimpleTriggerImpl();
|
||||
trigger1.Name = "myTrigger1";
|
||||
trigger1.Group = SchedulerConstants.DefaultGroup;
|
||||
trigger1.JobName = "myJob1";
|
||||
trigger1.JobGroup = SchedulerConstants.DefaultGroup;
|
||||
trigger1.StartTimeUtc = (DateTime.UtcNow);
|
||||
trigger1.RepeatCount = (SimpleTrigger.RepeatIndefinitely);
|
||||
trigger1.RepeatCount = (SimpleTriggerImpl.RepeatIndefinitely);
|
||||
trigger1.RepeatInterval = TimeSpan.FromMilliseconds(20);
|
||||
|
||||
IScheduler scheduler = MockRepository.GenerateMock<IScheduler>();
|
||||
@@ -535,8 +454,8 @@ namespace Spring.Scheduling.Quartz
|
||||
SchedulerFactoryObject schedulerFactoryObject = new TestSchedulerFactoryObject(scheduler);
|
||||
|
||||
schedulerFactoryObject.JobFactory = (jobFactory);
|
||||
schedulerFactoryObject.JobDetails = (new JobDetail[] {jobDetail0, jobDetail1});
|
||||
schedulerFactoryObject.Triggers = (new Trigger[] {trigger0, trigger1});
|
||||
schedulerFactoryObject.JobDetails = (new IJobDetail[] {jobDetail0, jobDetail1});
|
||||
schedulerFactoryObject.Triggers = (new ITrigger[] {trigger0, trigger1});
|
||||
try
|
||||
{
|
||||
schedulerFactoryObject.AfterPropertiesSet();
|
||||
@@ -550,17 +469,10 @@ namespace Spring.Scheduling.Quartz
|
||||
scheduler.AssertWasCalled(x => x.JobFactory = jobFactory);
|
||||
scheduler.AssertWasCalled(x => x.AddJob(jobDetail0, true));
|
||||
scheduler.AssertWasCalled(x => x.AddJob(jobDetail1, true));
|
||||
#if QUARTZ_2_0
|
||||
scheduler.AssertWasCalled(x => x.GetJobDetail(new JobKey("myJob0", SchedulerConstants.DefaultGroup)));
|
||||
scheduler.AssertWasCalled(x => x.GetJobDetail(new JobKey("myJob1", SchedulerConstants.DefaultGroup)));
|
||||
scheduler.AssertWasCalled(x => x.GetTrigger(new TriggerKey("myTrigger0", SchedulerConstants.DefaultGroup)));
|
||||
scheduler.AssertWasCalled(x => x.GetTrigger(new TriggerKey("myTrigger1", SchedulerConstants.DefaultGroup)));
|
||||
#else
|
||||
scheduler.AssertWasCalled(x => x.GetJobDetail("myJob0", SchedulerConstants.DefaultGroup));
|
||||
scheduler.AssertWasCalled(x => x.GetJobDetail("myJob1", SchedulerConstants.DefaultGroup));
|
||||
scheduler.AssertWasCalled(x => x.GetTrigger("myTrigger0", SchedulerConstants.DefaultGroup));
|
||||
scheduler.AssertWasCalled(x => x.GetTrigger("myTrigger1", SchedulerConstants.DefaultGroup));
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -618,62 +530,6 @@ namespace Spring.Scheduling.Quartz
|
||||
Assert.AreEqual(ac, jobDetail.JobDataMap.Get("appCtx"));
|
||||
}
|
||||
|
||||
#if !QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestMethodInvokingJobDetailFactoryObjectWithListenerNames()
|
||||
{
|
||||
TestMethodInvokingTask task = new TestMethodInvokingTask();
|
||||
MethodInvokingJobDetailFactoryObject mijdfb = new MethodInvokingJobDetailFactoryObject();
|
||||
String[] names = new String[] {"test1", "test2"};
|
||||
mijdfb.Name = ("myJob1");
|
||||
mijdfb.Group = (SchedulerConstants.DefaultGroup);
|
||||
mijdfb.TargetObject = (task);
|
||||
mijdfb.TargetMethod = ("doSomething");
|
||||
mijdfb.JobListenerNames = (names);
|
||||
mijdfb.AfterPropertiesSet();
|
||||
JobDetail jobDetail = (JobDetail) mijdfb.GetObject();
|
||||
ArrayList result = new ArrayList(jobDetail.JobListenerNames);
|
||||
Assert.AreEqual(names, result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestJobDetailObjectWithListenerNames()
|
||||
{
|
||||
JobDetailObject jobDetail = new JobDetailObject();
|
||||
String[] names = new String[] {"test1", "test2"};
|
||||
jobDetail.JobListenerNames = (names);
|
||||
ArrayList result = new ArrayList(jobDetail.JobListenerNames);
|
||||
Assert.AreEqual(names, result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestCronTriggerObjectWithListenerNames()
|
||||
{
|
||||
CronTriggerObject trigger = new CronTriggerObject();
|
||||
String[] names = new String[] {"test1", "test2"};
|
||||
trigger.TriggerListenerNames = (names);
|
||||
ArrayList result = new ArrayList(trigger.TriggerListenerNames);
|
||||
Assert.AreEqual(names, result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestSimpleTriggerObjectWithListenerNames()
|
||||
{
|
||||
SimpleTriggerObject trigger = new SimpleTriggerObject();
|
||||
String[] names = new String[] {"test1", "test2"};
|
||||
trigger.TriggerListenerNames = (names);
|
||||
ArrayList result = new ArrayList(trigger.TriggerListenerNames);
|
||||
Assert.AreEqual(names, result);
|
||||
}
|
||||
#endif
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
[Test]
|
||||
@@ -682,9 +538,8 @@ namespace Spring.Scheduling.Quartz
|
||||
CountingTaskExecutor taskExecutor = new CountingTaskExecutor();
|
||||
DummyJob.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetail();
|
||||
JobDetailImpl jobDetail = new JobDetailImpl();
|
||||
jobDetail.JobType = typeof (DummyJob);
|
||||
;
|
||||
jobDetail.Name = ("myJob");
|
||||
|
||||
SimpleTriggerObject trigger = new SimpleTriggerObject();
|
||||
@@ -697,8 +552,8 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.TaskExecutor = (taskExecutor);
|
||||
factoryObject.Triggers = (new Trigger[] {trigger});
|
||||
factoryObject.JobDetails = (new JobDetail[] {jobDetail});
|
||||
factoryObject.Triggers = (new ITrigger[] {trigger});
|
||||
factoryObject.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -716,7 +571,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
DummyRunnable.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetailObject();
|
||||
JobDetailImpl jobDetail = new JobDetailObject();
|
||||
jobDetail.JobType = typeof (DummyRunnable);
|
||||
jobDetail.Name = "myJob";
|
||||
|
||||
@@ -729,8 +584,8 @@ namespace Spring.Scheduling.Quartz
|
||||
trigger.AfterPropertiesSet();
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.Triggers = new Trigger[] {trigger};
|
||||
factoryObject.JobDetails = new JobDetail[] {jobDetail};
|
||||
factoryObject.Triggers = new ITrigger[] {trigger};
|
||||
factoryObject.JobDetails = new IJobDetail[] {jobDetail};
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -748,7 +603,7 @@ namespace Spring.Scheduling.Quartz
|
||||
DummyJob.param = 0;
|
||||
DummyJob.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetail();
|
||||
JobDetailImpl jobDetail = new JobDetailImpl();
|
||||
jobDetail.JobType = (typeof (DummyJobObject));
|
||||
jobDetail.Name = ("myJob");
|
||||
jobDetail.JobDataMap.Put("param", "10");
|
||||
@@ -762,8 +617,8 @@ namespace Spring.Scheduling.Quartz
|
||||
trigger.AfterPropertiesSet();
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.Triggers = (new Trigger[] {trigger});
|
||||
factoryObject.JobDetails = (new JobDetail[] {jobDetail});
|
||||
factoryObject.Triggers = (new ITrigger[] {trigger});
|
||||
factoryObject.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -782,7 +637,7 @@ namespace Spring.Scheduling.Quartz
|
||||
DummyJob.param = 0;
|
||||
DummyJob.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetail();
|
||||
JobDetailImpl jobDetail = new JobDetailImpl();
|
||||
jobDetail.JobType = typeof(DummyJob);
|
||||
jobDetail.Name = ("myJob");
|
||||
jobDetail.JobDataMap.Add("param", "10");
|
||||
@@ -798,8 +653,8 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.JobFactory = (new SpringObjectJobFactory());
|
||||
factoryObject.Triggers = (new Trigger[] {trigger});
|
||||
factoryObject.JobDetails = (new JobDetail[] {jobDetail});
|
||||
factoryObject.Triggers = (new ITrigger[] {trigger});
|
||||
factoryObject.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -818,7 +673,7 @@ namespace Spring.Scheduling.Quartz
|
||||
DummyJob.param = 0;
|
||||
DummyJob.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetail();
|
||||
JobDetailImpl jobDetail = new JobDetailImpl();
|
||||
jobDetail.JobType = typeof(DummyJob);
|
||||
jobDetail.Name = ("myJob");
|
||||
jobDetail.JobDataMap.Add("para", "10");
|
||||
@@ -836,8 +691,8 @@ namespace Spring.Scheduling.Quartz
|
||||
SpringObjectJobFactory jobFactory = new SpringObjectJobFactory();
|
||||
jobFactory.IgnoredUnknownProperties = (new String[] {"ignoredParam"});
|
||||
bean.JobFactory = (jobFactory);
|
||||
bean.Triggers = (new Trigger[] {trigger});
|
||||
bean.JobDetails = (new JobDetail[] {jobDetail});
|
||||
bean.Triggers = (new ITrigger[] {trigger});
|
||||
bean.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
bean.AfterPropertiesSet();
|
||||
|
||||
Thread.Sleep(500);
|
||||
@@ -855,7 +710,7 @@ namespace Spring.Scheduling.Quartz
|
||||
DummyRunnable.param = 0;
|
||||
DummyRunnable.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetailObject();
|
||||
JobDetailObject jobDetail = new JobDetailObject();
|
||||
jobDetail.JobType = typeof (DummyRunnable);
|
||||
jobDetail.Name = ("myJob");
|
||||
jobDetail.JobDataMap.Add("param", "10");
|
||||
@@ -870,8 +725,8 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.JobFactory = (new SpringObjectJobFactory());
|
||||
factoryObject.Triggers = (new Trigger[] {trigger});
|
||||
factoryObject.JobDetails = (new JobDetail[] {jobDetail});
|
||||
factoryObject.Triggers = (new ITrigger[] {trigger});
|
||||
factoryObject.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -890,7 +745,7 @@ namespace Spring.Scheduling.Quartz
|
||||
DummyJobObject.param = 0;
|
||||
DummyJobObject.count = 0;
|
||||
|
||||
JobDetail jobDetail = new JobDetail();
|
||||
JobDetailImpl jobDetail = new JobDetailImpl();
|
||||
jobDetail.JobType = typeof (DummyJobObject);
|
||||
jobDetail.Name = ("myJob");
|
||||
jobDetail.JobDataMap.Add("param", "10");
|
||||
@@ -905,8 +760,8 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
|
||||
factoryObject.JobFactory = (new SpringObjectJobFactory());
|
||||
factoryObject.Triggers = (new Trigger[] {trigger});
|
||||
factoryObject.JobDetails = (new JobDetail[] {jobDetail});
|
||||
factoryObject.Triggers = (new ITrigger[] {trigger});
|
||||
factoryObject.JobDetails = (new IJobDetail[] {jobDetail});
|
||||
factoryObject.AfterPropertiesSet();
|
||||
factoryObject.Start();
|
||||
|
||||
@@ -1064,8 +919,6 @@ namespace Spring.Scheduling.Quartz
|
||||
ctx.Dispose();
|
||||
}
|
||||
|
||||
|
||||
#if QUARTZ_2_0
|
||||
private class TestSchedulerListener : ISchedulerListener
|
||||
{
|
||||
public void JobScheduled(ITrigger trigger)
|
||||
@@ -1145,47 +998,6 @@ namespace Spring.Scheduling.Quartz
|
||||
}
|
||||
}
|
||||
|
||||
#else
|
||||
private class TestSchedulerListener : ISchedulerListener
|
||||
{
|
||||
public void JobScheduled(Trigger trigger)
|
||||
{
|
||||
}
|
||||
|
||||
public void JobUnscheduled(String triggerName, String triggerGroup)
|
||||
{
|
||||
}
|
||||
|
||||
public void TriggerFinalized(Trigger trigger)
|
||||
{
|
||||
}
|
||||
|
||||
public void TriggersPaused(String triggerName, String triggerGroup)
|
||||
{
|
||||
}
|
||||
|
||||
public void TriggersResumed(String triggerName, String triggerGroup)
|
||||
{
|
||||
}
|
||||
|
||||
public void JobsPaused(String jobName, String jobGroup)
|
||||
{
|
||||
}
|
||||
|
||||
public void JobsResumed(String jobName, String jobGroup)
|
||||
{
|
||||
}
|
||||
|
||||
public void SchedulerError(String msg, SchedulerException cause)
|
||||
{
|
||||
}
|
||||
|
||||
public void SchedulerShutdown()
|
||||
{
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private class TestJobListener : IJobListener
|
||||
{
|
||||
public string Name
|
||||
@@ -1193,15 +1005,15 @@ namespace Spring.Scheduling.Quartz
|
||||
get { return null; }
|
||||
}
|
||||
|
||||
public void JobToBeExecuted(JobExecutionContext context)
|
||||
public void JobToBeExecuted(IJobExecutionContext context)
|
||||
{
|
||||
}
|
||||
|
||||
public void JobExecutionVetoed(JobExecutionContext context)
|
||||
public void JobExecutionVetoed(IJobExecutionContext context)
|
||||
{
|
||||
}
|
||||
|
||||
public void JobWasExecuted(JobExecutionContext context, JobExecutionException jobException)
|
||||
public void JobWasExecuted(IJobExecutionContext context, JobExecutionException jobException)
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -1214,20 +1026,20 @@ namespace Spring.Scheduling.Quartz
|
||||
get { return null; }
|
||||
}
|
||||
|
||||
public void TriggerFired(Trigger trigger, JobExecutionContext context)
|
||||
public void TriggerFired(ITrigger trigger, IJobExecutionContext context)
|
||||
{
|
||||
}
|
||||
|
||||
public bool VetoJobExecution(Trigger trigger, JobExecutionContext context)
|
||||
public bool VetoJobExecution(ITrigger trigger, IJobExecutionContext context)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public void TriggerMisfired(Trigger trigger)
|
||||
public void TriggerMisfired(ITrigger trigger)
|
||||
{
|
||||
}
|
||||
|
||||
public void TriggerComplete(Trigger trigger, JobExecutionContext context,
|
||||
public void TriggerComplete(ITrigger trigger, IJobExecutionContext context,
|
||||
SchedulerInstruction triggerInstructionCode)
|
||||
{
|
||||
}
|
||||
@@ -1278,7 +1090,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// applied as object property values by execute. The contract is
|
||||
/// exactly the same as for the standard Quartz execute method.
|
||||
/// </summary>
|
||||
protected override void ExecuteInternal(JobExecutionContext jobExecutionContext)
|
||||
protected override void ExecuteInternal(IJobExecutionContext jobExecutionContext)
|
||||
{
|
||||
count++;
|
||||
}
|
||||
@@ -1329,7 +1141,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// Executes this job instance.
|
||||
///</summary>
|
||||
///<param name="jobExecutionContext"></param>
|
||||
public void Execute(JobExecutionContext jobExecutionContext)
|
||||
public void Execute(IJobExecutionContext jobExecutionContext)
|
||||
{
|
||||
count++;
|
||||
}
|
||||
|
||||
@@ -25,18 +25,12 @@ using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Impl.Triggers;
|
||||
using Quartz.Spi;
|
||||
using Rhino.Mocks;
|
||||
|
||||
using Spring.Core.IO;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using Trigger = Quartz.ITrigger;
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
using JobDetail = Quartz.IJobDetail;
|
||||
using SimpleTrigger = Quartz.Impl.Triggers.SimpleTriggerImpl;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -97,34 +91,6 @@ namespace Spring.Scheduling.Quartz
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.JobFactory = null);
|
||||
}
|
||||
|
||||
#if !QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// Tests AfterPropertiesSet behavior.
|
||||
/// </summary>
|
||||
[Test]
|
||||
public void TestAfterPropertiesSet_AddListeners()
|
||||
{
|
||||
InitForAfterPropertiesSetTest();
|
||||
|
||||
factory.SchedulerListeners = new ISchedulerListener[] { MockRepository.GenerateMock<ISchedulerListener>() };
|
||||
|
||||
factory.GlobalJobListeners = new IJobListener[] { MockRepository.GenerateMock<IJobListener>() };
|
||||
|
||||
factory.JobListeners = new IJobListener[] { MockRepository.GenerateMock<IJobListener>() };
|
||||
|
||||
factory.GlobalTriggerListeners = new ITriggerListener[] { MockRepository.GenerateMock<ITriggerListener>() };
|
||||
|
||||
factory.TriggerListeners = new ITriggerListener[] { MockRepository.GenerateMock<ITriggerListener>() };
|
||||
|
||||
factory.AfterPropertiesSet();
|
||||
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.AddSchedulerListener(Arg<ISchedulerListener>.Is.NotNull));
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.AddGlobalJobListener(Arg<IJobListener>.Is.NotNull));
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.AddJobListener(Arg<IJobListener>.Is.NotNull));
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.AddGlobalTriggerListener(Arg<ITriggerListener>.Is.NotNull));
|
||||
TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.AddTriggerListener(Arg<ITriggerListener>.Is.NotNull));
|
||||
}
|
||||
#endif
|
||||
/// <summary>
|
||||
/// Tests AfterPropertiesSet behavior.
|
||||
/// </summary>
|
||||
@@ -154,14 +120,10 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
const string TRIGGER_NAME = "trigName";
|
||||
const string TRIGGER_GROUP = "trigGroup";
|
||||
SimpleTrigger trigger = new SimpleTrigger(TRIGGER_NAME, TRIGGER_GROUP);
|
||||
factory.Triggers = new Trigger[] { trigger };
|
||||
SimpleTriggerImpl trigger = new SimpleTriggerImpl(TRIGGER_NAME, TRIGGER_GROUP);
|
||||
factory.Triggers = new ITrigger[] { trigger };
|
||||
|
||||
#if QUARTZ_2_0
|
||||
TestSchedulerFactory.MockScheduler.Stub(x => x.GetTrigger(new TriggerKey(TRIGGER_NAME, TRIGGER_GROUP))).Return(trigger);
|
||||
#else
|
||||
TestSchedulerFactory.MockScheduler.Stub(x => x.GetTrigger(TRIGGER_NAME, TRIGGER_GROUP)).Return(trigger);
|
||||
#endif
|
||||
|
||||
factory.AfterPropertiesSet();
|
||||
}
|
||||
@@ -176,8 +138,8 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
const string TRIGGER_NAME = "trigName";
|
||||
const string TRIGGER_GROUP = "trigGroup";
|
||||
SimpleTrigger trigger = new SimpleTrigger(TRIGGER_NAME, TRIGGER_GROUP);
|
||||
factory.Triggers = new Trigger[] { trigger };
|
||||
SimpleTriggerImpl trigger = new SimpleTriggerImpl(TRIGGER_NAME, TRIGGER_GROUP);
|
||||
factory.Triggers = new ITrigger[] { trigger };
|
||||
|
||||
factory.AfterPropertiesSet();
|
||||
|
||||
@@ -337,21 +299,12 @@ ConnectionStringKey+ " = " + ConnectionStringValue + Environment.NewLine +
|
||||
return mockScheduler;
|
||||
}
|
||||
|
||||
#if QUARTZ_2_0
|
||||
///<summary>
|
||||
///</summary>
|
||||
public ICollection<IScheduler> AllSchedulers
|
||||
{
|
||||
get { return new List<IScheduler>(); }
|
||||
}
|
||||
#else
|
||||
///<summary>
|
||||
///</summary>
|
||||
public ICollection AllSchedulers
|
||||
{
|
||||
get { return new ArrayList(); }
|
||||
}
|
||||
#endif
|
||||
|
||||
public static void Initialize()
|
||||
{
|
||||
|
||||
@@ -17,16 +17,12 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Job;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
#endif
|
||||
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -105,7 +101,7 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
const string jobName = "jobName";
|
||||
const string jobGroup = "jobGroup";
|
||||
JobDetail jd = new JobDetail(jobName, jobGroup, typeof(NoOpJob));
|
||||
JobDetailImpl jd = new JobDetailImpl(jobName, jobGroup, typeof(NoOpJob));
|
||||
simpleTrigger.JobDetail = jd;
|
||||
simpleTrigger.AfterPropertiesSet();
|
||||
base.TestAfterPropertiesSet_JobDetailGiven();
|
||||
@@ -118,17 +114,11 @@ namespace Spring.Scheduling.Quartz
|
||||
[Test]
|
||||
public void TestJobDataAsMap()
|
||||
{
|
||||
#if QUARTZ_2_0
|
||||
IDictionary data = new Dictionary<string, object>();
|
||||
#else
|
||||
Hashtable data = new Hashtable();
|
||||
#endif
|
||||
data["foo"] = "bar";
|
||||
data["number"] = 123;
|
||||
simpleTrigger.JobDataAsMap = data;
|
||||
CollectionAssert.AreEquivalent(data, simpleTrigger.JobDataMap, "Data differed");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -16,19 +16,14 @@
|
||||
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl.Triggers;
|
||||
using Quartz.Job;
|
||||
using Quartz.Spi;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using Trigger = Quartz.Spi.IOperableTrigger;
|
||||
using JobExecutionContext = Quartz.IJobExecutionContext;
|
||||
using JobDetail = Quartz.IJobDetail;
|
||||
using SimpleTrigger = Quartz.Impl.Triggers.SimpleTriggerImpl;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -55,14 +50,10 @@ namespace Spring.Scheduling.Quartz
|
||||
[Test]
|
||||
public void TestCreateJobInstance_SimpleDefaults()
|
||||
{
|
||||
Trigger trigger = new SimpleTrigger();
|
||||
IOperableTrigger trigger = new SimpleTriggerImpl();
|
||||
TriggerFiredBundle bundle = TestUtil.CreateMinimalFiredBundleWithTypedJobDetail(typeof (NoOpJob), trigger);
|
||||
|
||||
#if QUARTZ_2_0
|
||||
IJob job = factory.NewJob(bundle, null);
|
||||
#else
|
||||
IJob job = factory.NewJob(bundle);
|
||||
#endif
|
||||
Assert.IsNotNull(job, "Created job was null");
|
||||
}
|
||||
|
||||
@@ -72,22 +63,14 @@ namespace Spring.Scheduling.Quartz
|
||||
[Test]
|
||||
public void TestCreateJobInstance_SchedulerContextGiven()
|
||||
{
|
||||
Trigger trigger = new SimpleTrigger();
|
||||
IOperableTrigger trigger = new SimpleTriggerImpl();
|
||||
TriggerFiredBundle bundle = TestUtil.CreateMinimalFiredBundleWithTypedJobDetail(typeof(InjectableJob), trigger);
|
||||
|
||||
#if QUARTZ_2_0
|
||||
IDictionary<string, object> items = new Dictionary<string, object>();
|
||||
items["foo"] = "bar";
|
||||
items["number"] = 123;
|
||||
factory.SchedulerContext = new SchedulerContext(items);
|
||||
InjectableJob job = (InjectableJob)factory.NewJob(bundle, null);
|
||||
#else
|
||||
IDictionary items = new Hashtable();
|
||||
items["foo"] = "bar";
|
||||
items["number"] = 123;
|
||||
factory.SchedulerContext = new SchedulerContext(items);
|
||||
InjectableJob job = (InjectableJob) factory.NewJob(bundle);
|
||||
#endif
|
||||
|
||||
Assert.IsNotNull(job, "Created job was null");
|
||||
Assert.AreEqual("bar", job.Foo, "string injection failed");
|
||||
@@ -101,16 +84,12 @@ namespace Spring.Scheduling.Quartz
|
||||
public void TestCreateJobInstance_IgnoredProperties()
|
||||
{
|
||||
factory.IgnoredUnknownProperties = new string[] {"foo", "baz"};
|
||||
Trigger trigger = new SimpleTrigger();
|
||||
IOperableTrigger trigger = new SimpleTriggerImpl();
|
||||
trigger.JobDataMap["foo"] = "should not be injected";
|
||||
trigger.JobDataMap["number"] = 123;
|
||||
TriggerFiredBundle bundle = TestUtil.CreateMinimalFiredBundleWithTypedJobDetail(typeof(InjectableJob), trigger);
|
||||
|
||||
#if QUARTZ_2_0
|
||||
InjectableJob job = (InjectableJob)factory.NewJob(bundle, null);
|
||||
#else
|
||||
InjectableJob job = (InjectableJob)factory.NewJob(bundle);
|
||||
#endif
|
||||
Assert.IsNotNull(job, "Created job was null");
|
||||
Assert.AreEqual(123, job.Number, "integer injection failed");
|
||||
Assert.IsNull(job.Foo, "foo was injected when it was not supposed to ");
|
||||
|
||||
@@ -17,13 +17,9 @@
|
||||
using System;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Impl;
|
||||
using Quartz.Spi;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using JobDetail = Quartz.Impl.JobDetailImpl;
|
||||
using Trigger = Quartz.Spi.IOperableTrigger;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -50,9 +46,9 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <param name="jobType">Type of the job.</param>
|
||||
/// <param name="trigger">The trigger.</param>
|
||||
/// <returns>Minimal TriggerFiredBundle</returns>
|
||||
public static TriggerFiredBundle CreateMinimalFiredBundleWithTypedJobDetail(Type jobType, Trigger trigger)
|
||||
public static TriggerFiredBundle CreateMinimalFiredBundleWithTypedJobDetail(Type jobType, IOperableTrigger trigger)
|
||||
{
|
||||
JobDetail jd = new JobDetail("jobName", "jobGroup", jobType);
|
||||
IJobDetail jd = new JobDetailImpl("jobName", "jobGroup", jobType);
|
||||
TriggerFiredBundle bundle = new TriggerFiredBundle(jd, trigger, null, false, null, null, null, null);
|
||||
return bundle;
|
||||
}
|
||||
|
||||
@@ -19,13 +19,10 @@ using System;
|
||||
using NUnit.Framework;
|
||||
|
||||
using Quartz;
|
||||
using Quartz.Spi;
|
||||
|
||||
using Spring.Objects.Factory;
|
||||
|
||||
#if QUARTZ_2_0
|
||||
using Trigger = Quartz.Spi.IOperableTrigger;
|
||||
#endif
|
||||
|
||||
namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
/// <summary>
|
||||
@@ -34,7 +31,7 @@ namespace Spring.Scheduling.Quartz
|
||||
[TestFixture]
|
||||
public abstract class TriggerObjectTest
|
||||
{
|
||||
private Trigger trigger;
|
||||
private IOperableTrigger trigger;
|
||||
|
||||
/// <summary>
|
||||
/// Constant name for tested triggers.
|
||||
@@ -44,7 +41,7 @@ namespace Spring.Scheduling.Quartz
|
||||
/// <summary>
|
||||
/// TriggerObject under test.
|
||||
/// </summary>
|
||||
protected Trigger Trigger
|
||||
protected IOperableTrigger Trigger
|
||||
{
|
||||
set { trigger = value; }
|
||||
}
|
||||
@@ -57,16 +54,9 @@ namespace Spring.Scheduling.Quartz
|
||||
{
|
||||
((IInitializingObject) trigger).AfterPropertiesSet();
|
||||
|
||||
#if QUARTZ_2_0
|
||||
Assert.AreEqual(TRIGGER_NAME, trigger.Key.Name, "trigger name mismatch");
|
||||
Assert.AreEqual(SchedulerConstants.DefaultGroup, trigger.Key.Group, "trigger group name mismatch");
|
||||
Assert.IsNull(trigger.JobKey, "trigger job name not null");
|
||||
#else
|
||||
Assert.AreEqual(TRIGGER_NAME, trigger.Name, "trigger name mismatch");
|
||||
Assert.AreEqual(SchedulerConstants.DefaultGroup, trigger.Group, "trigger group name mismatch");
|
||||
Assert.IsNull(trigger.JobName, "trigger job name not null");
|
||||
Assert.AreEqual(SchedulerConstants.DefaultGroup, trigger.JobGroup, "trigger job group was not default");
|
||||
#endif
|
||||
AssertDateTimesEqualityWithAllowedDelta(DateTime.UtcNow, trigger.StartTimeUtc, 1000);
|
||||
}
|
||||
|
||||
@@ -82,16 +72,9 @@ namespace Spring.Scheduling.Quartz
|
||||
const string GROUP = "newGroup";
|
||||
DateTime START_TIME = new DateTime(1982, 6, 28, 13, 10, 0);
|
||||
trigger.StartTimeUtc = START_TIME;
|
||||
#if QUARTZ_2_0
|
||||
trigger.Key = new TriggerKey(NAME, GROUP);
|
||||
Assert.AreEqual(NAME, trigger.Key.Name, "trigger name mismatch");
|
||||
Assert.AreEqual(GROUP, trigger.Key.Group, "trigger group name mismatch");
|
||||
#else
|
||||
trigger.Name = NAME;
|
||||
trigger.Group = GROUP;
|
||||
Assert.AreEqual(NAME, trigger.Name, "trigger name mismatch");
|
||||
Assert.AreEqual(GROUP, trigger.Group, "trigger group name mismatch");
|
||||
#endif
|
||||
AssertDateTimesEqualityWithAllowedDelta(START_TIME, trigger.StartTimeUtc, 1000);
|
||||
}
|
||||
|
||||
@@ -105,16 +88,11 @@ namespace Spring.Scheduling.Quartz
|
||||
|
||||
const string jobName = "jobName";
|
||||
const string jobGroup = "jobGroup";
|
||||
#if QUARTZ_2_0
|
||||
|
||||
Assert.AreEqual(jobName, trigger.JobKey.Name, "trigger job name was not from job detail");
|
||||
Assert.AreEqual(jobGroup, trigger.JobKey.Group, "trigger job group was not from job detail");
|
||||
#else
|
||||
Assert.AreEqual(jobName, trigger.JobName, "trigger job name was not from job detail");
|
||||
Assert.AreEqual(jobGroup, trigger.JobGroup, "trigger job group was not from job detail");
|
||||
#endif
|
||||
}
|
||||
|
||||
#if QUARTZ_2_0
|
||||
/// <summary>
|
||||
/// Tests whether two datetimes are close enough.
|
||||
/// </summary>
|
||||
@@ -126,34 +104,5 @@ namespace Spring.Scheduling.Quartz
|
||||
int diffInMillis = (int) Math.Abs((d1 - d2).TotalMilliseconds);
|
||||
Assert.LessOrEqual(diffInMillis, allowedDeltaInMilliseconds, "too much difference in times");
|
||||
}
|
||||
#else
|
||||
|
||||
/// <summary>
|
||||
/// Tests whether two datetimes are close enough.
|
||||
/// </summary>
|
||||
/// <param name="d1"></param>
|
||||
/// <param name="d2"></param>
|
||||
/// <param name="allowedDeltaInMilliseconds"></param>
|
||||
protected static void AssertDateTimesEqualityWithAllowedDelta(DateTime d1, DateTime d2, int allowedDeltaInMilliseconds)
|
||||
{
|
||||
int diffInMillis = (int)Math.Abs((d1 - d2).TotalMilliseconds);
|
||||
Assert.LessOrEqual(diffInMillis, allowedDeltaInMilliseconds, "too much difference in times");
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Tests that TriggerObject defaults values as expected in AfterPropertiesSet.
|
||||
/// </summary>
|
||||
[Test]
|
||||
public virtual void TestTriggerListenerNames_Valid()
|
||||
{
|
||||
((IInitializingObject)trigger).AfterPropertiesSet();
|
||||
|
||||
string[] LISTENER_NAMES = new string[] { "Foo", "Bar", "Baz" };
|
||||
trigger.TriggerListenerNames = LISTENER_NAMES;
|
||||
CollectionAssert.AreEqual(LISTENER_NAMES, trigger.TriggerListenerNames, "Trigger listeners were not equal");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20.Tests\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;NET_2_0,NET_3_0,NET_3_5,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>
|
||||
@@ -27,7 +27,7 @@
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2008\Spring.Scheduling.Quartz20.Tests\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;NET_2_0,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\build\VS.NET.2010\Spring.Scheduling.Quartz20.Tests\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;NET_4_0,QUARTZ_2_0</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG;NET_4_0</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>
|
||||
|
||||
Reference in New Issue
Block a user