using SharedLibraryCore.RCon; using System.Collections.Generic; using System.Globalization; namespace SharedLibraryCore.Interfaces { public interface IRConParserConfiguration { /// /// stores the command format for console commands /// CommandPrefix CommandPrefixes { get; } /// /// stores the regex info for parsing get status response /// ParserRegex Status { get; } /// /// stores regex info for parsing the map line from rcon status response /// ParserRegex MapStatus { get; } /// /// stores regex info for parsing the gametype line from rcon status response /// ParserRegex GametypeStatus { get; } /// /// stores regex info for parsing hostname line from rcon status response /// ParserRegex HostnameStatus { get; } /// /// stores regex info for parsing max players line from rcon status response /// ParserRegex MaxPlayersStatus { get; } /// /// stores the regex info for parsing get DVAR responses /// ParserRegex Dvar { get; } /// /// stores the regex info for parsing the header of a status response /// ParserRegex StatusHeader { get; } /// /// Specifies the expected response message from rcon when the server is not running /// string ServerNotRunningResponse { get; } /// /// indicates if the application should wait for response from server /// when executing a command /// bool WaitForResponse { get; } /// /// indicates the format expected for parsed guids /// NumberStyles GuidNumberStyle { get; } /// /// specifies simple mappings for dvar names in scenarios where the needed /// information is not stored in a traditional dvar name /// IDictionary OverrideDvarNameMapping { get; } /// /// specifies the default dvar values for games that don't support certain dvars /// IDictionary DefaultDvarValues { get; } /// /// specifies how many lines can be used for ingame notice /// int NoticeMaximumLines { get; set; } /// /// specifies how many characters can be displayed per notice line /// int NoticeMaxCharactersPerLine { get; } /// /// specifies the characters used to split a line /// string NoticeLineSeparator { get; } } }