cleaning up

This commit is contained in:
Ján Lučanský
2018-12-29 23:49:13 +01:00
parent 6b2f18bfb4
commit ace5bc0dc6
17 changed files with 58 additions and 52 deletions

View File

@@ -9,7 +9,7 @@ namespace AspNetCoreDocker
{ {
public static void Main(string[] args) public static void Main(string[] args)
{ {
var scheduler = DemoScheduler.Create(); var scheduler = DemoScheduler.Create().Result;
var host = WebHost.CreateDefaultBuilder(args).Configure(app => var host = WebHost.CreateDefaultBuilder(args).Configure(app =>
{ {

View File

@@ -4,7 +4,7 @@
<section name="quartz" type="System.Configuration.NameValueFileSectionHandler" /> <section name="quartz" type="System.Configuration.NameValueFileSectionHandler" />
</configSections> </configSections>
<quartz> <quartz>
<add key="quartz.plugin.executionHistoryPlugin.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.executionHistoryPlugin.executionHistoryStoreType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.storeType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" />
</quartz> </quartz>
</configuration> </configuration>

View File

@@ -14,7 +14,7 @@ namespace Quartzmin.AspNetCore
{ {
app.UseQuartzmin(new QuartzminOptions() app.UseQuartzmin(new QuartzminOptions()
{ {
Scheduler = DemoScheduler.Create(), Scheduler = DemoScheduler.Create().Result,
}); });
} }
} }

View File

@@ -5,7 +5,7 @@
</configSections> </configSections>
<quartz> <quartz>
<add key="quartz.plugin.executionHistoryPlugin.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.executionHistoryPlugin.executionHistoryStoreType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.storeType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" />
</quartz> </quartz>
</configuration> </configuration>

View File

@@ -12,7 +12,7 @@ namespace Quartzmin.AspNet
{ {
app.UseQuartzmin(new QuartzminOptions() app.UseQuartzmin(new QuartzminOptions()
{ {
Scheduler = DemoScheduler.Create(), Scheduler = DemoScheduler.Create().Result,
DefaultDateFormat = "dd.MM.yyyy", DefaultDateFormat = "dd.MM.yyyy",
VirtualPathRoot = "/test", VirtualPathRoot = "/test",

View File

@@ -10,8 +10,8 @@
</configSections> </configSections>
<quartz> <quartz>
<add key="quartz.plugin.executionHistoryPlugin.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.executionHistoryPlugin.executionHistoryStoreType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.storeType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" />
</quartz> </quartz>
<system.web> <system.web>

View File

@@ -7,7 +7,7 @@ namespace NetCoreSelfHost
{ {
static void Main(string[] args) static void Main(string[] args)
{ {
var scheduler = DemoScheduler.Create(); var scheduler = DemoScheduler.Create().Result;
scheduler.Start(); scheduler.Start();
while (!scheduler.IsShutdown) while (!scheduler.IsShutdown)

View File

@@ -5,8 +5,8 @@
</configSections> </configSections>
<quartz> <quartz>
<add key="quartz.plugin.executionHistoryPlugin.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.executionHistoryPlugin.executionHistoryStoreType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.storeType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.quartzmin.type" value="Quartzmin.SelfHost.QuartzminPlugin, Quartzmin.SelfHost" /> <add key="quartz.plugin.quartzmin.type" value="Quartzmin.SelfHost.QuartzminPlugin, Quartzmin.SelfHost" />
<add key="quartz.plugin.quartzmin.url" value="http://*:333" /> <add key="quartz.plugin.quartzmin.url" value="http://*:333" />

View File

@@ -10,10 +10,9 @@ namespace Quartzmin
{ {
public static class DemoScheduler public static class DemoScheduler
{ {
public static IScheduler Create(bool start = true) public static async Task<IScheduler> Create(bool start = true)
{ {
var schedulerFactory = new StdSchedulerFactory(); var scheduler = await StdSchedulerFactory.GetDefaultScheduler();
var scheduler = schedulerFactory.GetScheduler().Result;
{ {
var jobData = new JobDataMap(); var jobData = new JobDataMap();
@@ -31,7 +30,7 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithCronSchedule("0 0 8 1/1 * ? *") .WithCronSchedule("0 0 8 1/1 * ? *")
.Build(); .Build();
scheduler.ScheduleJob(job, trigger).Wait(); await scheduler.ScheduleJob(job, trigger);
trigger = TriggerBuilder.Create() trigger = TriggerBuilder.Create()
.WithIdentity("MonthlySales") .WithIdentity("MonthlySales")
@@ -39,8 +38,8 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithCronSchedule("0 0 12 1 1/1 ? *") .WithCronSchedule("0 0 12 1 1/1 ? *")
.Build(); .Build();
scheduler.ScheduleJob(trigger).Wait(); await scheduler.ScheduleJob(trigger);
scheduler.PauseTrigger(trigger.Key).Wait(); await scheduler.PauseTrigger(trigger.Key);
trigger = TriggerBuilder.Create() trigger = TriggerBuilder.Create()
.WithIdentity("HourlySales") .WithIdentity("HourlySales")
@@ -48,22 +47,22 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithSimpleSchedule(x => x.WithIntervalInHours(1).RepeatForever()) .WithSimpleSchedule(x => x.WithIntervalInHours(1).RepeatForever())
.Build(); .Build();
scheduler.ScheduleJob(trigger).Wait(); await scheduler.ScheduleJob(trigger);
} }
{ {
var job = JobBuilder.Create<DummyJob>().WithIdentity("Job1").StoreDurably().Build(); var job = JobBuilder.Create<DummyJob>().WithIdentity("Job1").StoreDurably().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
job = JobBuilder.Create<DummyJob>().WithIdentity("Job2").StoreDurably().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Job2").StoreDurably().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
job = JobBuilder.Create<DummyJob>().WithIdentity("Job3").StoreDurably().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Job3").StoreDurably().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
job = JobBuilder.Create<DummyJob>().WithIdentity("Job4").StoreDurably().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Job4").StoreDurably().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
job = JobBuilder.Create<DummyJob>().WithIdentity("Job5").StoreDurably().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Job5").StoreDurably().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
job = JobBuilder.Create<DummyJob>().WithIdentity("Send SMS", "CRITICAL").StoreDurably().RequestRecovery().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Send SMS", "CRITICAL").StoreDurably().RequestRecovery().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
var trigger = TriggerBuilder.Create() var trigger = TriggerBuilder.Create()
.WithIdentity("PushAds (US)") .WithIdentity("PushAds (US)")
@@ -72,7 +71,7 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithCronSchedule("0 0/5 * 1/1 * ? *") .WithCronSchedule("0 0/5 * 1/1 * ? *")
.Build(); .Build();
scheduler.ScheduleJob(trigger).Wait(); await scheduler.ScheduleJob(trigger);
trigger = TriggerBuilder.Create() trigger = TriggerBuilder.Create()
.WithIdentity("PushAds (EU)") .WithIdentity("PushAds (EU)")
@@ -81,11 +80,11 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithCronSchedule("0 0/7 * 1/1 * ? *") .WithCronSchedule("0 0/7 * 1/1 * ? *")
.Build(); .Build();
scheduler.ScheduleJob(trigger).Wait(); await scheduler.ScheduleJob(trigger);
scheduler.PauseTriggers(GroupMatcher<TriggerKey>.GroupEquals("LONGRUNNING")); await scheduler.PauseTriggers(GroupMatcher<TriggerKey>.GroupEquals("LONGRUNNING"));
job = JobBuilder.Create<DummyJob>().WithIdentity("Send Push", "CRITICAL").StoreDurably().RequestRecovery().Build(); job = JobBuilder.Create<DummyJob>().WithIdentity("Send Push", "CRITICAL").StoreDurably().RequestRecovery().Build();
scheduler.AddJob(job, false).Wait(); await scheduler.AddJob(job, false);
} }
{ {
@@ -99,17 +98,17 @@ namespace Quartzmin
.StartNow() .StartNow()
.WithSimpleSchedule(x => x.WithIntervalInSeconds(5).RepeatForever()) .WithSimpleSchedule(x => x.WithIntervalInSeconds(5).RepeatForever())
.Build(); .Build();
scheduler.ScheduleJob(job, trigger).Wait(); await scheduler.ScheduleJob(job, trigger);
trigger = TriggerBuilder.Create() trigger = TriggerBuilder.Create()
.WithIdentity("CSV_big", "LONGRUNNING") .WithIdentity("CSV_big", "LONGRUNNING")
.ForJob(job) .ForJob(job)
.StartNow() .StartNow()
.WithDailyTimeIntervalSchedule(x=>x.OnMondayThroughFriday()) .WithDailyTimeIntervalSchedule(x=>x.OnMondayThroughFriday())
.Build(); .Build();
scheduler.ScheduleJob(trigger).Wait(); await scheduler.ScheduleJob(trigger);
} }
if (start) if (start)
scheduler.Start().GetAwaiter().GetResult(); await scheduler.Start();
return scheduler; return scheduler;
} }

View File

@@ -9,8 +9,8 @@
</startup> </startup>
<quartz> <quartz>
<add key="quartz.plugin.executionHistoryPlugin.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.type" value="Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.executionHistoryPlugin.executionHistoryStoreType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" /> <add key="quartz.plugin.recentHistory.storeType" value="Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory" />
<add key="quartz.plugin.quartzmin.type" value="Quartzmin.SelfHost.QuartzminPlugin, Quartzmin.SelfHost" /> <add key="quartz.plugin.quartzmin.type" value="Quartzmin.SelfHost.QuartzminPlugin, Quartzmin.SelfHost" />
<add key="quartz.plugin.quartzmin.url" value="http://localhost:9999" /> <add key="quartz.plugin.quartzmin.url" value="http://localhost:9999" />

View File

@@ -18,7 +18,7 @@ namespace WinFormSelfHost
void CreateScheduler() void CreateScheduler()
{ {
scheduler = DemoScheduler.Create(start: false); scheduler = DemoScheduler.Create(start: false).Result;
} }
private void btnStart_Click(object sender, EventArgs e) private void btnStart_Click(object sender, EventArgs e)

View File

@@ -36,8 +36,8 @@
<Reference Include="Microsoft.Owin, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="Microsoft.Owin, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\..\..\packages\Microsoft.Owin.2.1.0\lib\net45\Microsoft.Owin.dll</HintPath> <HintPath>..\..\..\packages\Microsoft.Owin.2.1.0\lib\net45\Microsoft.Owin.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.Owin.Host.HttpListener, Version=2.0.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="Microsoft.Owin.Host.HttpListener, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\..\..\packages\Microsoft.Owin.Host.HttpListener.2.0.2\lib\net45\Microsoft.Owin.Host.HttpListener.dll</HintPath> <HintPath>..\..\..\packages\Microsoft.Owin.Host.HttpListener.2.1.0\lib\net45\Microsoft.Owin.Host.HttpListener.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.Owin.Hosting, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="Microsoft.Owin.Hosting, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\..\..\packages\Microsoft.Owin.Hosting.2.1.0\lib\net45\Microsoft.Owin.Hosting.dll</HintPath> <HintPath>..\..\..\packages\Microsoft.Owin.Hosting.2.1.0\lib\net45\Microsoft.Owin.Hosting.dll</HintPath>

View File

@@ -5,7 +5,7 @@
<package id="Microsoft.AspNet.WebApi.Owin" version="5.2.6" targetFramework="net452" /> <package id="Microsoft.AspNet.WebApi.Owin" version="5.2.6" targetFramework="net452" />
<package id="Microsoft.AspNet.WebApi.OwinSelfHost" version="5.2.6" targetFramework="net452" /> <package id="Microsoft.AspNet.WebApi.OwinSelfHost" version="5.2.6" targetFramework="net452" />
<package id="Microsoft.Owin" version="2.1.0" targetFramework="net452" /> <package id="Microsoft.Owin" version="2.1.0" targetFramework="net452" />
<package id="Microsoft.Owin.Host.HttpListener" version="2.0.2" targetFramework="net452" /> <package id="Microsoft.Owin.Host.HttpListener" version="2.1.0" targetFramework="net452" />
<package id="Microsoft.Owin.Hosting" version="2.1.0" targetFramework="net452" /> <package id="Microsoft.Owin.Hosting" version="2.1.0" targetFramework="net452" />
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net452" /> <package id="Newtonsoft.Json" version="11.0.2" targetFramework="net452" />
<package id="Owin" version="1.0" targetFramework="net452" /> <package id="Owin" version="1.0" targetFramework="net452" />

View File

@@ -1,5 +1,4 @@
using Quartz; using Quartz.Impl.Matchers;
using Quartz.Impl.Matchers;
using Quartz.Spi; using Quartz.Spi;
using System; using System;
using System.Threading; using System.Threading;
@@ -13,7 +12,7 @@ namespace Quartz.Plugins.RecentHistory
IExecutionHistoryStore _store; IExecutionHistoryStore _store;
public string Name { get; set; } public string Name { get; set; }
public Type ExecutionHistoryStoreType { get; set; } public Type StoreType { get; set; }
public Task Initialize(string pluginName, IScheduler scheduler, CancellationToken cancellationToken = default(CancellationToken)) public Task Initialize(string pluginName, IScheduler scheduler, CancellationToken cancellationToken = default(CancellationToken))
{ {
@@ -30,11 +29,11 @@ namespace Quartz.Plugins.RecentHistory
if (_store == null) if (_store == null)
{ {
if (ExecutionHistoryStoreType != null) if (StoreType != null)
_store = (IExecutionHistoryStore)Activator.CreateInstance(ExecutionHistoryStoreType); _store = (IExecutionHistoryStore)Activator.CreateInstance(StoreType);
if (_store == null) if (_store == null)
throw new Exception(nameof(ExecutionHistoryStoreType) + " is not set."); throw new Exception(nameof(StoreType) + " is not set.");
_scheduler.Context.SetExecutionHistoryStore(_store); _scheduler.Context.SetExecutionHistoryStore(_store);
} }

View File

@@ -7,17 +7,19 @@
<GenerateDocumentationFile>true</GenerateDocumentationFile> <GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>1591</NoWarn> <NoWarn>1591</NoWarn>
<Version>1.0.0</Version> <Version>1.0.1</Version>
<Product>Quartz.Plugins.RecentHistory</Product> <Product>Quartz.Plugins.RecentHistory</Product>
<Title>Quartz.NET plugin to persist recent job execution history</Title> <Title>Quartz.NET plugin to persist recent job execution history</Title>
<Authors>Jan Lucansky</Authors> <Authors>Jan Lucansky</Authors>
<PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl> <PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl>
<Description>This is supporting package for Quartzmin</Description> <Description>This is supporting package for Quartzmin</Description>
<PackageTags>quartz recent history</PackageTags> <PackageTags>quartz;recent;history</PackageTags>
<AssemblyVersion>1.0.0.0</AssemblyVersion> <AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.0.0.0</FileVersion> <FileVersion>1.0.0.0</FileVersion>
<PackageLicenseFile>LICENSE</PackageLicenseFile> <PackageLicenseFile>LICENSE</PackageLicenseFile>
<Copyright>Copyright © 2018 Jan Lucansky</Copyright>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/jlucansky/Quartzmin</RepositoryUrl>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@@ -7,18 +7,20 @@
<GenerateDocumentationFile>true</GenerateDocumentationFile> <GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>1591</NoWarn> <NoWarn>1591</NoWarn>
<Version>1.0.0</Version> <Version>1.0.1</Version>
<Product>Quartzmin.SelfHost</Product> <Product>Quartzmin.SelfHost</Product>
<Title>Quartzmin Self Host</Title> <Title>Quartzmin Self Host</Title>
<Authors>Jan Lucansky</Authors> <Authors>Jan Lucansky</Authors>
<PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl> <PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl>
<PackageIconUrl>https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/avatar.png</PackageIconUrl> <PackageIconUrl>https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/avatar.png</PackageIconUrl>
<Description>This package allows you to host Quartzmin within your own process.</Description> <Description>This package allows you to host Quartzmin within your own process.</Description>
<PackageTags>quartzmin web host</PackageTags> <PackageTags>quartzmin;web;host</PackageTags>
<AssemblyVersion>1.0.0.0</AssemblyVersion> <AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.0.0.0</FileVersion> <FileVersion>1.0.0.0</FileVersion>
<PackageLicenseFile>LICENSE</PackageLicenseFile> <PackageLicenseFile>LICENSE</PackageLicenseFile>
<Copyright>Copyright © 2018 Jan Lucansky</Copyright>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/jlucansky/Quartzmin</RepositoryUrl>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^net\d'))"> <PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^net\d'))">
@@ -34,6 +36,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup Condition="$(DefineConstants.Contains('NETFRAMEWORK'))"> <ItemGroup Condition="$(DefineConstants.Contains('NETFRAMEWORK'))">
<PackageReference Include="Microsoft.Owin.Hosting" Version="2.1.0" />
<PackageReference Include="Microsoft.Owin.Host.HttpListener" Version="2.1.0" /> <PackageReference Include="Microsoft.Owin.Host.HttpListener" Version="2.1.0" />
<PackageReference Include="Microsoft.AspNet.WebApi.OwinSelfHost" Version="5.2.6" /> <PackageReference Include="Microsoft.AspNet.WebApi.OwinSelfHost" Version="5.2.6" />
</ItemGroup> </ItemGroup>

View File

@@ -8,17 +8,20 @@
<NoWarn>1591</NoWarn> <NoWarn>1591</NoWarn>
<GenerateEmbeddedFilesManifest>true</GenerateEmbeddedFilesManifest> <GenerateEmbeddedFilesManifest>true</GenerateEmbeddedFilesManifest>
<Version>1.0.0</Version> <Version>1.0.1</Version>
<Product>Quartzmin</Product> <Product>Quartzmin</Product>
<Title>Web management tool for Quartz.NET</Title> <Title>Web management tool for Quartz.NET</Title>
<Authors>Jan Lucansky</Authors> <Authors>Jan Lucansky</Authors>
<PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl> <PackageProjectUrl>https://github.com/jlucansky/Quartzmin</PackageProjectUrl>
<PackageIconUrl>https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/avatar.png</PackageIconUrl> <PackageIconUrl>https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/avatar.png</PackageIconUrl>
<Description>Powerful, easy to use web management tool for Quartz.NET</Description> <Description>Powerful, easy to use web management tool for Quartz.NET</Description>
<PackageTags>quartz web ui</PackageTags> <PackageTags>quartz;web;ui</PackageTags>
<AssemblyVersion>1.0.0.0</AssemblyVersion> <AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.0.0.0</FileVersion> <FileVersion>1.0.0.0</FileVersion>
<PackageLicenseFile>LICENSE</PackageLicenseFile> <PackageLicenseFile>LICENSE</PackageLicenseFile>
<Copyright>Copyright © 2018 Jan Lucansky</Copyright>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/jlucansky/Quartzmin</RepositoryUrl>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^net\d'))"> <PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^net\d'))">