Skip to content

Commit

Permalink
-added "RetryCount" and "DisableConcurrentExecutionTimeout" to appset…
Browse files Browse the repository at this point in the history
…tings.json to have configuratable options for jobs

-refactoring solution
-fix for #9 (when datarow not exists in downloaded data from screw head, that execution will continue with next datarow)
  • Loading branch information
Ondrej Tadanai committed Sep 4, 2018
1 parent 9459c15 commit 521c753
Show file tree
Hide file tree
Showing 69 changed files with 9,383 additions and 9,240 deletions.
24 changes: 24 additions & 0 deletions Infrastructure/Startup.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using System.Diagnostics;
using System.IO;
using System.Linq;
using Hangfire;
using Hangfire.MemoryStorage;
using Microsoft.AspNetCore.Builder;
Expand Down Expand Up @@ -67,6 +68,29 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerF
app.UseStaticFiles();

GlobalConfiguration.Configuration.UseActivator(new HangfireActivator(app.ApplicationServices));
var filter = (AutomaticRetryAttribute)GlobalJobFilters.Filters.SingleOrDefault(i => i.Instance is AutomaticRetryAttribute)?.Instance;// ||i.Instance is DisableConcurrentExecutionAttribute);
if (filter != null)
{
filter.Attempts = Configuration.GetValue<int>("RetryCount");
}
else
{
GlobalJobFilters.Filters.Add(new AutomaticRetryAttribute()
{
Attempts = Configuration.GetValue<int>("RetryCount")
});
}

var filter2 = (DisableConcurrentExecutionAttribute)GlobalJobFilters.Filters.SingleOrDefault(i => i.Instance is DisableConcurrentExecutionAttribute)?.Instance;// ||i.Instance is DisableConcurrentExecutionAttribute);
if (filter2 != null)
{
filter2 = new DisableConcurrentExecutionAttribute(Configuration.GetValue<int>("DisableConcurrentExecutionTimeout"));
}
else
{
GlobalJobFilters.Filters.Add(new DisableConcurrentExecutionAttribute(Configuration.GetValue<int>("DisableConcurrentExecutionTimeout")));
}

app.UseHangfireServer();
app.UseHangfireDashboard("/jobs");

Expand Down
1 change: 0 additions & 1 deletion Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ public static void Main(string[] args)
.UseStartup<Startup>()
.Build();
host.RunAsCustomService();

}
}
catch (System.Exception ex)
Expand Down
38 changes: 38 additions & 0 deletions Services/WeberReader/VarComm/AdvancedWarningStruct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class AdvancedWarningStruct
{
public byte[] Name;

public uint Limit;

public uint Advance;

public DateTimeStruct AdvancedWarningTime;

public uint AdvancedDays;

public byte EnableAdvancedWarningTime;

public AdvancedWarningStruct()
{
Initialize();
}

public void Initialize()
{
Name = new byte[32];
Limit = 9999999u;
Advance = 0u;
AdvancedWarningTime = new DateTimeStruct();
AdvancedDays = 0u;
EnableAdvancedWarningTime = 0;
}
}
}
}
44 changes: 44 additions & 0 deletions Services/WeberReader/VarComm/ComponentBufferStruct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class ComponentBufferStruct
{
public ushort[] userName;

public DateTimeStruct Time;

public ushort[] ComponentOrPartText;

public ushort[] ReasonText;

public ushort[] SerialNumber;

public byte NewEntry;

public uint PieceCount;

public uint Cycle;

public ComponentBufferStruct()
{
Initialize();
}

public void Initialize()
{
userName = new ushort[5];
Time = new DateTimeStruct();
ComponentOrPartText = new ushort[100];
ReasonText = new ushort[100];
SerialNumber = new ushort[31];
NewEntry = 0;
PieceCount = 0u;
Cycle = 0u;
}
}
}
}
36 changes: 36 additions & 0 deletions Services/WeberReader/VarComm/ComponentDataBlock_Struct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class ComponentDataBlock_Struct
{
public uint BlockNum;

public uint LastBlock;

public uint NextBlock;

public ComponentBufferStruct[] ComponentData;

public ComponentDataBlock_Struct()
{
Initialize();
}

public void Initialize()
{
BlockNum = 0u;
LastBlock = 0u;
NextBlock = 255u;
ComponentData = new ComponentBufferStruct[32];
for (int i = 0; i < 32; i++)
{
ComponentData[i] = new ComponentBufferStruct();
}
}
}
}
}
53 changes: 53 additions & 0 deletions Services/WeberReader/VarComm/CurveDataStruct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class CurveDataStruct
{
public short Nset;

public short Nact;

public float Torque;

public float FiltTorque;

public float Angle;

public byte DDepth;

public float ADepth;

public float ADepthGrad;

public float AExt;

public float Gradient;

public byte CurrentStep;

public CurveDataStruct()
{
Initialize();
}

public void Initialize()
{
Nset = 0;
Nact = 0;
Torque = 0f;
FiltTorque = 0f;
Angle = 0f;
DDepth = 0;
ADepth = 0f;
ADepthGrad = 0f;
AExt = 0f;
Gradient = 0f;
CurrentStep = 0;
}
}
}
}
27 changes: 27 additions & 0 deletions Services/WeberReader/VarComm/CurveData_Struct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class CurveData_Struct
{
public CurveDataStruct[] Point;

public CurveData_Struct()
{
Initialize();
}

public void Initialize()
{
Point = new CurveDataStruct[20000];
for (int i = 0; i < 20000; i++)
{
Point[i] = new CurveDataStruct();
}
}
}
}
}
35 changes: 35 additions & 0 deletions Services/WeberReader/VarComm/CurveDef_Struct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class CurveDef_Struct
{
public uint Points;

public float SampleTime;

public float SpeedSetScale;

public float SpeedActScale;

public byte UnitTorque;

public CurveDef_Struct()
{
Initialize();
}

public void Initialize()
{
Points = 0u;
SampleTime = 0f;
SpeedSetScale = 0f;
SpeedActScale = 0f;
UnitTorque = 0;
}
}
}
}
44 changes: 44 additions & 0 deletions Services/WeberReader/VarComm/CycleCount_Struct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class CycleCount_Struct
{
public uint ID1;

public uint Machine;

public uint Customer;

public uint[] Count;

public uint MachineNIO;

public uint CustomerNIO;

public uint CountReserve;

public uint ID2;

public CycleCount_Struct()
{
Initialize();
}

public void Initialize()
{
ID1 = 0u;
Machine = 0u;
Customer = 0u;
Count = new uint[5];
MachineNIO = 0u;
CustomerNIO = 0u;
CountReserve = 0u;
ID2 = 0u;
}
}
}
}
38 changes: 38 additions & 0 deletions Services/WeberReader/VarComm/DateTimeStruct.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
using System;

namespace TestApp.Services
{
public partial class VarComm
{
[Serializable]
public class DateTimeStruct
{
public ushort Year;

public byte Month;

public byte Day;

public byte Hour;

public byte Minute;

public byte Second;

public DateTimeStruct()
{
Initialize();
}

public void Initialize()
{
Year = 0;
Month = 0;
Day = 0;
Hour = 0;
Minute = 0;
Second = 0;
}
}
}
}
Loading

0 comments on commit 521c753

Please sign in to comment.