Skip to content

Latest commit

 

History

History
19 lines (10 loc) · 884 Bytes

README.md

File metadata and controls

19 lines (10 loc) · 884 Bytes

codingTask

This is a java maven project

Main class: home.work.parser.Main

exapmle of proper input: "*/15 0 1,15 * 1-5 /usr/bin/find"

code structure:

Main - has a main method ArgumentsReader - read agruments provided to the app, does some simple validation CronExpressionParser - parses the data into model (CronExpression) that can later on be printed by: CronExpressionPrinter

Parsing is being done using ParsingStrategy - an interface that is being implemented by set of CronExpressionTypes Enums, each having their own 'parse' method and has it's own indicator - a character/String that has to be present in the input value to be interpretable by this parser.

There is also CronExpressionTimeField - Enum that specifies time fields usable by the tool: minute, hour, days, months, etc - with their max and min values. E.g. day of week has min val of 1, and max val of 7.