Package ch.k43.util
Last updated
Last updated
K: Added repeat(), truncateMiddle(), compressGZIP(), decompressGZIP()
Some minor code and documentation changes
KHTTPServerThread: new Class to support HTTP server applications (for web or REST services)
K: Added getHTTPStatusText() to return text for a given HTTP status code
Updated Sample Code
Some minor code and documentation changes
K: Enhance toPEM() to format certificate chain of public keys and add option to describe objects in comments
Some minor code and documentation changes
K: Added loadKeyStore(), toPEM(), generateRSAKeyPair(), encodeHTML() and decodeHTML()
Updated sample code
Some minor code and documentation changes
K: Added INSTANCE_UUID to identify running application instance
KLog: Added options in KLog.properties and application startup parameters (KLogInclude and KLogExclude) to include or exclude data from logging
Some minor code and documentation changes
Publish Java code on GitHub as open source
K: Added getCurrentVersionNumber()
Some minor code and documentation changes
K: Added getPasswordHash()
Added HelloWorld example to test installation with java -jar ch.k43.util.jar
Some minor code and documentation changes
KTimer: Added reset()
K: Added saveError()
K: Added multiple static fields that describe the environment
Some minor code and documentation changes
KHTTPClient: Added setTimeOutSec()
KLog: Added command line parameter KLogPropertyFile to override name and location of KLog.properties file
KLog: Added command line parameter KLogLevel to override logging level (INFO, ERROR, DEBUG or OFF)
Changed locale of generated JavaDoc output to en_US
Some minor code and documentation changes
K: Added replaceParams()
KHTTPClient: Treat HTTP return code 200-299 as successful
KLog: Added parameterized logging to all methods, e.g. KLog.error("API call failed - Return code {}", returnCode)
Internal code optimization and documentation changes
Support for GraalVM native-image compilation (see Tips / FAQ)
Check if JVM is Java 8 (version 1.8) or higher
K: Added isNewVersionAvailable()
Some minor code changes
Major rewrite of the website content
KLog: Save the last 10 errors even if logging is not active (retrievable with K.getLastError() and K.getLastErrors()
K: Changed formatBytes() to show e.g. MiB instead of MB (IEC standard)
K: Added getPrivateKey(), getPublicKey() and getCertificate()
Sample code updated
Some minor code and documentation changes
KDB: Added option argTimeOutSec to exec()
KDB: Added prepare() and execPrepare() to support SQL precompilation and prevent SQL injection attacks
Some minor code and documentation changes
KLog: Fix small bug when debug log is active in YAML code
KLog: Added formatter class to write logging as YAML output
KDB: Added getDataAsYAML() to output result set as YAML string
K: Added encodeYAML() and decodeYAML()
Some minor code and documentation changes
K: Added option to isNumber() to check for allowed numeric range
KLog: Show CPU count and OS disk size in debug log
Some minor code and documentation changes
KThread: New class for easy Java thread creation and termination
K: Removed argForce argument from stopThread() as newer Java versions removed the depreciated Thread.stop() method
KSMTPMailer: Migrated from JavaMail (javax.mail) to Eclipse Jakarta/Angus mail.
KDB: Added option in getDataAsTable() to optionally print column headers
Some minor code and documentation changes
K: Added isInteger() and stopThread()
KLogSMTPHandler: Added logging handler to send error log entries (FATAL log level) to any SMTP server
Some minor code and documentation changes
K: Remove SHA-1 algorithm from generateHash()
K: Added serialize() and deserialize()
KDB: Added maxRows argument to exec() call
Added toString() to all classes to write out object data
Some minor code and documentation changes
K: added round(), compressZLIB() and decompressZLIB()
Some minor code and documentation changes
Implemented Java AutoCloseable in KDB, KSocketClient, KSocketServer, KSocketServerListener and KSocketServerThread
K: Added isNumber()
K: Added option to encodeJSON() to return null, boolean and number values without quotes
Some minor code and documentation changes
K: Added formatBytes(), updated getJVMMemStats() to return number of bytes
KDB: Added setAutoCommit() and getElapsedTime()
Some minor code and documentation changes
KLog: New formatter classes to write logging as CSV or XML output
KLog: Adds UUID field to JSON, CSV, XML and JDBC output
New KLog.properties sample file uploaded
Some minor code and documentation changes
K: Added encode and decode methods for XML
KLogJDBCHandler: Added logging handler to output data to any JDBC compliant database
KLog: Added getLevel() and setLevel()
KDB: Added getDataAsXML(), commit() and rollback()
KSMTPMailer: Added setUnsubscribe()
New KLog.properties sample file uploaded
Some minor code and documentation changes
KDB: New class to support JDBC compliant databases with various output formats (JSON, CSV, table or Java objects)
KSMTPMailer: Added setSubject(string, charset) for non-UTF-8 subjects
KSMTPMailer: Added setOAuth2Authentication() to support OAuth 2.0 authentication
K: Added encode and decode methods for JSON and CSV
Some minor code and documentation changes
KLog: Log.properties file renamed to KLog.properties for consistency with the KLog class
K: Added runGC() and getJVMMemStats()
KSMTPMailer: Added addText(string, charset) for non-UTF-8 text parts
Include downloads of Jakarta Mail and Jakarta Activation on this website
Some minor code and document changes
KLog: Added setLevelXxx(), isLevelXxx() and resetLevel() to set or query the configured logging level during runtime
KSMTPMailer: Added getMessageSize() to get size of MIME message after delivery
KSMTPMailer: Include Jakarta Mail debug log in KLog logging output
KSMTPMailer: Removed X-TLS-Connection header as there is no guarantee that it is enforced by the SMTP server
KTimer: Added getStartTime() and toString() to return start time as Calendar object or in ISO-8601 format
KSocketServerThread: Added writeLine()
K: Added getRandomInt(), getUTCOffsetMin() and getUTCOffsetAsString()
K: Added toHex() to format byte array or string to a hexadecimal string
K: Added getUniqueID() to return unique id (UUID)
K: Added getCurrentDir() to return current directory
K: Changed generateHash() to support SHA3-256, SHA3-384 ad SHA3-512
K: Added getStartTime() to return date and time of application startup
KHTTPClient: Added put(), patch(), options() and delete() methods
KSMTPMailer: Added check for hostname (TLS only)
Some minor code and document changes
K: Added isEmpty() to test string or array for emptiness
KSMTPMailer: Include platform in X-Mailer header
KSMTPMailer: Added header X-TLS-Connnection: true/false
Some code cleanup and documentation changes
KSMTPMailer: New class to compose and send multipart SMTP email with text, HTML and file attachments
KSocketServerThread: Added getAuthenthicatedClientCN() to return common name of the full distinguished name
KSocketClient: Added getAuthenticatedClient() and getAuthenticatedClientCN()
KFile: Added readPropertiesFile() and writePropertiesFile()
KLog: Added argException() to throw IllegalArgumentException if expression evaluates true
K: Added dnsQuery() to return records for all query types (MX, A, etc)
Some minor code and documentation changes
First public version
Added sample GraalVM macOS native image executable "GetCurrentVersion" in
Updated
Updated
Added for KSocketServer
Added some to this website