Vinay Prajapati

He's a pragmatic developer and skilled at coding and development and have a disciplined approach to software engineering with good domain experience in franchising practice. He loves new technologies and ideas, blogging and reading. Had received his Bachelor of Computer Science & Engineering from Maharishi Dayanand University, Haryana, India. You could find him mostly active on StackOverflow.

Java, Technology

Type Inference in Lambda Expressions : Java 8

Type Inference means that the data type of any expression (e.g. method return type or parameter type) can be deduced automatically by the compiler. Groovy language is a good example of programming languages supporting Type Inference. Similarly, Java 8 Lambda expressions also support Type inference. Let's understand how it works with a...


Java, Software development

Generic Functional Interfaces and Functional Interface API for Lambda Expressions: Java 8

Lambda expressions come with a standard rule that they can only be assigned to a reference variable which is a Functional Interface i.e. an interface having one and only one abstract method. Besides, a Lambda expression does not care about the name of a function and/ or any access specifier as it tries to infer this information from the...


Java, Software development

Functional Interface for Lambda expressions : Java 8

As we already know that Lambda Expressions are used to support functional programming in Java. The default behaviour of Lambda expressions is to accept only those interfaces as reference variables which have only one abstract method. We call such interfaces Functional Interfaces. You could also name them as SAM, i.e., Single Abstract...


Java, Software development

Functional Programming in Java8 Using Lambda Expressions

Lambda expressions are the most talked feature of Java 8. Lambda expressions drastically change the way we write the code in Java 8 as compared to what we used to, in older versions.  Let' understand what lambda expression is and how it works. At first, you could think about lambda expressions as a way of supporting functional...



Using “dependencies” in json schema (version : draft-v4)

Json Schema has another interesting feature which allows value of some property of json schema to depend upon other fields value. This could be done using "dependencies" which allows specifying dependent object / property on the basis of value of the field which is using dependencies keyword. An interesting scenario could be where you...



Using definitions internal to json schema and external to json schema (version – draft -04)

There could be times when you end with a generously large schema with lots of redundant properties due to certain business requirements. Json schema comes with a good feature named as definitions. It is used to contain repeating properties in one place and then referencing these using $ref and also overriding some property if needed. ...


Grails, Java

Compiling groovy code statically

Groovy by default uses dynamic dispatch. Dynamic Dispatch could be defined as the capability of adding or replacing units of code at run time. For example, we can change the definition of a method or we can add new methods to a class at run time using metaprogramming in Groovy. Even after being a powerful feature of Groovy, there may...


Gradle, Technology

Integrating SpringBoot with Gradle

Springboot support is provided by most of the build tools e.g. Gradle and Maven. Though grails 3.x comes with Springboot and gradle integration, there might come scenarios where you just want to create a very small and simple build that does specific task e.g. a build that will just run some threads and trigger some rabbitmq messages. Now...



Quick start with Springboot using CLI

SpringBoot is one of the main projects of Spring community which takes opinionated view of production ready applications. It helps you getting up and running a production grade spring application. It comes with even a CLI to get you quick started with springboot. CLI stands for Command Line Interface which gives *spring* command using...



Making a domain non-persistent

In grails app, there might come scenarios where one need to create a non-persistent domain rather than creating a command obejct or POJO / POGO. GORM comes with a handy static property mapWith which has default value GORM (which associates any domain with gorm persistence layer). To make a domain non persistent set mapWith="none". For...



A month @Intelligrape

The moment I reached home.Thoughts started buzzing with the conjoining thought of sharing these thoughts with you all. Day 1  @Intelligrape : With perplexed thoughts in my mind, I settled myself down to Sofa at reception . My intellect was in panic  as  thoughts were bamboozling me while I was pretending to be  relaxed.And soon...