Releases: michaelgantman/Mgnt
Infrastructure for scheduled user defined Tasks execution in background threads
This release adds an infrastructure that can run user implemented Task classes in a separate thread at configured time interval. The interval could be parsed from String in human readable format such as "9h" for 9 hours.
Self-initializing Factory
This release contains some small infrastructure that simplifies and automates working with Factories that provide concrete implementations of an Interface. The package contains just 2 classes: BaseEntityFactory and BaseEntity. In short what this infrastructure does is that if you create a factory that extends BaseEntityFactory and some Interface with all its concrete implementations extending BaseEntity then each your concrete implementation class instances will be automatically inserted into your factory. You won't have to worry about how and when to populate your factory. The infrastructure will do it for you when the constructor of your concrete implementation class is invoked. So all you will have to do is to create any number of concrete implementation classes and make sure that for each one constructor is invoked. After that you can use your factory to get any of your concrete implementation classes anywhere in your code.
String formatting to preserve indentation format for HTML without use of escaping characters
A new feature added that converts String to preserve indentation formatting for html without use of escape characters. It converts a String in such a way that its spaces are not modified by HTML renderer i.e. it replaces regular space characters with non-breaking spaces known as ' ' but they look in your source as regular space ' ' and not as ' ' It also replaces new line character with '<br>'.
Improved String parsing to time interval
In this release the feature parsing string to time interval is refactored, improved and streamlined. in addition to supported suffixes of "s", "m" and "h" (for seconds, minutes and hours respectively) suffix "d" for days was added. If the string comes without suffix then the value is considered to be in milliseconds (instead of seconds in previous release which left no way to parse the string in millisecods at all). Also default value parameter is removed and if the parsed string is invalid then IllegalArgumentException is thrown
New Feature: parsing String to time interval
Version 1.1.0.2 that includes new feature of parsing a String to Time interval with support of suffixes s, m, h for seconds, minutes and hours. This could be very convenient to parse time interval properties. Usually properties that specify time are written in milliseconds which is tidious and inconenient to calculate into minutes or hours or days and back. Or it is a convention that must be known and enforced that time interval is written in other time unit (say minutes) without specifying so. This feature allows to write a property value as 40s or 50m or 3h for seconds minutes and hours and the value will be properly parsed and could be extracted in code as milliseconds, seconds, minutes, hours or days using this new feature
1.1.0.1
The new feature in this release supports setting relevant package through system property "mgnt.relevant.package"or environment variable "MGNT_RELEVANT_PACKAGE" (System property takes precedence if both are set)
Some Bug fixes
Bug fix for class StringUnicodeEncoderDecoder: decoding method now will recognize the prefix '\U' as well as the one with lower case 'u'
Minor formatting changes
Adding info on Maven Artifacts and fixing javadoc and sources jars format
Switching to CharSequence from string in parsing methods parameter
In methods parseStringToXXX switching first parameter to CharSequence from String. Also changing pom file to comply with Maven repository requirements
1.02
Just removing some irrelevant code