Releases: phax/ph-commons
Releases · phax/ph-commons
ph-commons 9.3.5
- Updated to BouncyCastle 1.62
- Added new
EURLProtocol
entriesCID
andMID
from RFC 2392 - Minor speed ups in several places
- Added overload of
PDTXMLConverter.getXMLCalendarDate
with timezone offset in minutes - Added new
JsonReader.Builer
overloads LocaleHelper.getValidCountryCode
now convert ISO 3166 Alpha 3 codes to ALpha 2 codes where applicable- Made XML serialization settings on the XML declaration more fine grained
ph-commons 9.3.4
- Added new overloads for
JsonReader.Builder.setSource
- Catching exception in
VerySecureRandom
initialization -setSeed
may throw an Exception - Deprecated class
RandomHelper
- causes more problems than it solves - Added new method
CertificateHelper.convertStringToCertficateOrNull
- Added new method
CertificateHelper.convertByteArrayToCertficateDirect
- Added complete list of HTTP response codes constants to
CHttp
- Added new method
Base64OutputStream.setNewLineBytes
- Removed methods
Base64.(encode|decode)Object
for security reasons - Added new option
Base64.DO_NEWLINE_CRLF
to use\r\n
as newline separator instead of\n
ph-commons 9.3.3
- Added
ICommonsIterable
methodsfindFirstIndex
andfindLastIndex
- Added support for Java 12
- The default XML persistence for configuration files was changed. No more "class" attribute and no nested "value" element needed. The old layout can still be read, but only the new layout is written.
- The class
JsonReader
now has an explicitJsonReader.Builder
class to simplify the usage - New class
SettingsPersistenceJson
to be able to read and write settings in JSON format
ph-commons 9.3.2
- Logging a warning in
VerySecureRandom
if initial seeding takes more than 500 milliseconds - If the system property
ph.disable-securerandom
with the value oftrue
is present, the usage ofSecureRandom
in classRandomHelper
is disabled by default. Respective logging was added. - The system property
ph.securerandom-reseed-interval
with a numeric value ≥ 0 can be used to set the default "re-seed interval" for classVerySecureRandom
VerySecureRandom
usesNativePRNGNonBlocking
as the initialSecureRandom
for faster Linux initialization.
ph-commons 9.3.1
- Made
IJsonWriterSettings
serializable - Updated to BouncyCastle 1.61
null
values in settings can be serialized nowHttpHeaderMap
methodsforEachSingleHeader
andforEachHeaderLine
now use the unified values
ph-commons 9.3.0
- Restored the
Automatic-Module-Name
ofcom.helger.scopes
- Moved method
exceptionCallbacks
to base classAbstractJAXBBuilder
- Exception handler in
GenericJAXBMarshaller
now based on ´CallbackList` - incompatible change - Fixed the conversion from
String
toInteger
,Long
andShort
so thatnull
is returned on error (therefore throwing aTypeConverterException
) IGetter*Trait
getAs...
methods now returnnull
on error instead of throwing aTypeConverterException
ph-commons 9.2.1
- Improved API of
JsonParseException
- Added additional default
MicroTypeConverter
registrations (File
,Path
,URL
andURI
) - Added special implementation of
IHasInputStream
forNonBlockingByteArrayOutputStream
- Added enum entry
EXMLSerializeXMLDeclaration.EMIT_NO_NEWLINE
- Extended internal API of
AbstractMapBasedWALDAO
to allow for not invoking the callbacks - Added method
ConfigFileBuilder.addPathFromEnvVar
to get the configuration file path from an environment variable - Added new keystore type
BCFKS
- see issue #13 - Added new constructor for
MapEntry
to takeMap.Entry
- Added new default methods to classes
IHasDimension*
(isLandscape, isPortrait and isQuadratic) MimeTypeContent
is now serializable- The OSGI export for submodule
ph-scopes
was corrected - see issue #14 - Added static factory methods for
ByteArrayWrapper
ph-commons 9.2.0
- Undo deprecations of
ValueEnforcer
short and float methods. - Simplified the
IMultilingualText
interface and implementations (backwards incompatible) - Removed all deprecated, unused methods
ICommonsIterable
is no longer Serializable. OnlyICommonsCollection
is serializable.IHasDisplayText
is no longer Serializable.IDisplayTextProvider
is no longer Serializable.IHasText
is no longer Serializable.- Changed return type of
SystemProperties.setPropertyValue()
toEChange
JAXBDocumentType
takesList<ClassPathResource>
instead ofList<String>
to avoid ClassLoader issues- Changed
PBCProvider
initialization to log a warning instead of throwing an exception - Added
StringHelper
methodsgetQuoted
andappendQuoted
- Improved Java 10/Java 11 support
- Moved
CloneHelper.getClonedJAXBElement
to new classJAXBHelper
inph-jaxb
subproject (Java 11 issue) - Moved class
WSTestHelper
to subprojectph-wsclient
(Java 11 issue) - First version to compile with OracleJDK 11 and OpenJDK 11
- Added methods in
PDTFactory
to remove microseconds and nanoseconds from(Zoned|Offset|Local)DateTime
- Added support for silent mode in
AbstractDAO
- Changed
DOMReader.readXMLDOM
to not throw an Exception. Provide a suitableErrorHandler
instead. WrappedCollectingSAXErrorHandler
is now derived fromCollectingSAXErrorHandler
ph-commons 9.1.8
- Added special support for properties
java.runtime.version
andjava.runtime.name
in classSystemProperties
- Class
JavaVersionHelper
now supports AdoptOpenJDK versions HttpHeaderMap
stores the value case sensitive internally and compares case sensitive instead (issue #11)- Added
PDTConfig.getUTCTimeZone ()
- Fixed a conversion error from
GregorianCalendar
toXMLGregorianCalendar
if only the date part is used (issue #12) - Added TimeZone related methods in
PDTFactory
- Added method
IHasInputStream.getBufferedInputStream()
,IHasInputStreamAndReader.getBufferedReader()
andIHasReader.getBufferedReader()
- Added method
IHasOutputStream.getBufferedOutputStream()
,IHasOutputStreamAndWriter.getBufferedWriter()
andIHasWriter.getBufferedWriter()
- Opened
JsonReader
API to add the possibility to pass in anIJsonParserCustomizeCallback
instance - Added
IMultilingualText.texts ()
- Fixed some SpotBugs errors
- Added
IJAXBWriter.getAsInputStream(...)
- Added new marker interface
IExplicitlyCloneable
ph-commons 9.1.7
- Added new class
IdentityByteArrayCodec
- Added new classes
MacInputStream
andMacOutputStream
- Deprecated some JSON APIs with
byte
,short
andfloat
- Overloaded
WrappedOutputStream.write (byte[],int,int)
for quicker pass-through. Please ensure that all derived classes also overload this method. JSONValue
handling forlong
values in theint
range was changed to storeint
internally. This improves testability independent of the value range.- Added new
StringHelper.contains(Any|No|Only)
methods forCharSequence
andString
objects