One handy feature that made the cut in JDK 10 release train is Local-Variable Type Inference (JEP-286). This language feature is part of project Amber, a successor to Project Coin 🙂 With more frequent releases planned for the Java platform, we could expect to see 2 feature releases this year, so March release will be … Read moreLocal Variable Type Inference in Java 10
TimeAndSizeRollingAppender, a very handy Log4J appender that supports rolling log files by time and size. I haven’t found one that meet my requirements in the built-in/extra appenders provided by log4j project. DailyRollingFileAppender is the closest appender I could live with, but there is no way to control size of the file when rolling, which is … Read moreMust have Time and Size Log4J appender for your application
Starting in JDK 9 build 54, compiler support for private interface methods have been resurrected. This was one feature that was planned for Java 8 and did not make the final cut. It is now part of JEP 213. The primary motivation for this proposal is to enable code sharing between non abstract methods in … Read morePrivate interface methods in Java 9
Java 8 will go GA in March 2014. The first proposed final draft of Java 8 JSR 337 was released early this week. One of the main components of this JSR is Lambda Expressions for the language (JSR 337). This brings the functional constructs to the language, which will undeniably make Java a top contender … Read moreJava 8 gearing up for release, why Java 8 will be a top contender for Java.next languages in 2014?
The default chunk size in Apache HttpClient 4.3 is set to 2048 bytes. There is no easy way to customize the chunk size in the latest Apache HttpClient release. It looks like the only approach is to implement a custom ClientConnectionFactory that allows to override the default chunk size. Here is an example.
Two years ago, I blogged about parallel for each construct using a very early version of lambda prototype compiler. At that time, Data Parallelism was already available in C# TPL, but Java designers were hard at work in bringing this idiom to Java. Lambda expressions support in Java 8 is here for everyone to give … Read moreParallel Looping Constructs in Java (revisited)
Java 8 adds support for bulk data operations (JEP 107) in the Collections library. It is unlikely every forms of bulk data operations will be added to the retrofitted Collections framework, but the language designers are making every possible effort in accommodating general use cases of “filter/map/reduce for Java”. Libraries should make use of parallelization … Read moreJava 8 – This ain’t your grandpa’s Java
It is nice to download the course materials from coursera.org and view them offline especially the mp4 video lectures. Here is a nice utility which exactly does that. I used this script to download video lectures for Functional Programming Principles in Scala course. It comes handy to listen from smartphone! git clone https://github.com/jplehmann/coursera cd coursera … Read moreFunctional Programming Principles in Scala video lectures from coursera.org
Aloha from Hawaii! Shame on me to not blog for months. Well, honestly I have been quite busy during the past few months. With the big move to Hawaii in December and the recent launch of Floify kept me occupied. Although moving to a new place is fun, getting settled on an island can sometimes … Read moreImplementing a light weight web service trigger in Flux
Flux’s RestAction is the go-to construct for users orchestrating Flux workflows that involve web service integration. Be it HTTP-based services or SOAP-based services that implement HTTP binding, RestAction comes very handy for developers. Flux has a WebServiceAction which talks SOAP exclusively for services that implement WS-* such as Addressing, Security etc. RestAction has neat XPath … Read moreInvoking Web Services from your Flux Workflow