fix for runaway regular expression on linux
explicitly set string dvars in quotes to allow setting empty dvars allow piping in input from command line (#114) update the distribution for top stats elo prevent game log file rotation from stopping event parsing
This commit is contained in:
@ -39,6 +39,11 @@ namespace SharedLibraryCore.Interfaces
|
||||
/// </summary>
|
||||
ParserRegex Action { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// stores the regex information for the time prefix in game log
|
||||
/// </summary>
|
||||
ParserRegex Time { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// indicates the format expected for parsed guids
|
||||
/// </summary>
|
||||
|
@ -1,6 +1,4 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SharedLibraryCore.Interfaces
|
||||
@ -17,11 +15,13 @@ namespace SharedLibraryCore.Interfaces
|
||||
/// <param name="fileSizeDiff"></param>
|
||||
/// <param name="startPosition"></param>
|
||||
/// <returns></returns>
|
||||
Task<ICollection<GameEvent>> ReadEventsFromLog(Server server, long fileSizeDiff, long startPosition);
|
||||
Task<IEnumerable<GameEvent>> ReadEventsFromLog(Server server, long fileSizeDiff, long startPosition);
|
||||
|
||||
/// <summary>
|
||||
/// how long the log file is
|
||||
/// </summary>
|
||||
long Length { get; }
|
||||
|
||||
/// <summary>
|
||||
/// how often to poll the log file
|
||||
/// </summary>
|
||||
|
18
SharedLibraryCore/Interfaces/IMatchResult.cs
Normal file
18
SharedLibraryCore/Interfaces/IMatchResult.cs
Normal file
@ -0,0 +1,18 @@
|
||||
namespace SharedLibraryCore.Interfaces
|
||||
{
|
||||
/// <summary>
|
||||
/// represents a pattern match result
|
||||
/// </summary>
|
||||
public interface IMatchResult
|
||||
{
|
||||
/// <summary>
|
||||
/// array of matched pattern groups
|
||||
/// </summary>
|
||||
string[] Values { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// indicates if the match succeeded
|
||||
/// </summary>
|
||||
bool Success { get; set; }
|
||||
}
|
||||
}
|
21
SharedLibraryCore/Interfaces/IParserPatternMatcher.cs
Normal file
21
SharedLibraryCore/Interfaces/IParserPatternMatcher.cs
Normal file
@ -0,0 +1,21 @@
|
||||
namespace SharedLibraryCore.Interfaces
|
||||
{
|
||||
/// <summary>
|
||||
/// defines the capabilities of a parser pattern
|
||||
/// </summary>
|
||||
public interface IParserPatternMatcher
|
||||
{
|
||||
/// <summary>
|
||||
/// converts input string into pattern groups
|
||||
/// </summary>
|
||||
/// <param name="input">input string</param>
|
||||
/// <returns>group matches</returns>
|
||||
IMatchResult Match(string input);
|
||||
|
||||
/// <summary>
|
||||
/// compiles the pattern to be used for matching
|
||||
/// </summary>
|
||||
/// <param name="pattern"></param>
|
||||
void Compile(string pattern);
|
||||
}
|
||||
}
|
14
SharedLibraryCore/Interfaces/IParserRegexFactory.cs
Normal file
14
SharedLibraryCore/Interfaces/IParserRegexFactory.cs
Normal file
@ -0,0 +1,14 @@
|
||||
namespace SharedLibraryCore.Interfaces
|
||||
{
|
||||
/// <summary>
|
||||
/// defines the capabilities of the parser regex factory
|
||||
/// </summary>
|
||||
public interface IParserRegexFactory
|
||||
{
|
||||
/// <summary>
|
||||
/// creates a new ParserRegex instance
|
||||
/// </summary>
|
||||
/// <returns>ParserRegex instance</returns>
|
||||
ParserRegex CreateParserRegex();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user