Skip to content

Latest commit

 

History

History
75 lines (51 loc) · 1.72 KB

README.md

File metadata and controls

75 lines (51 loc) · 1.72 KB

BuilderMaster

BuilderMaster it's a library that will generate Builder code for your entities. Uses concepts such as DataBuilder, Method Chaining e Fluent Interface.

The original BuilderMaster was developed by wcaquino, this is a translation of the library into English.

Usage

To generate the builder code for a class, add the jar in the classpath of your code then invoke the following method:

new BuilderMaster().generateBuilderCode(YourClass.class);

The generated code will be printed on the console, just copy it. Create a class named YourClassBuilder and paste the generated code leaving only the declaration of the package.

Example

As an example, see the entity below:

package br.com.leandrobortoli.entities;

public class User {

	private String name;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
}

And now, the generated code for the entity above:

package br.com.leandrobortoli.entities; //Only row that was not generated by BuilderMaster

import java.util.Arrays;
import java.lang.String;
import br.com.leandrobortoli.buildermaster.User;


public class UserBuilder {
	private User element;
	private UserBuilder(){}

	public static UserBuilder anUser() {
		UserBuilder builder = new UserBuilder();
		init(builder);
		return builder;
	}

	public static void init(UserBuilder builder) {
		builder.element = new User();
		User element = builder.element;

		
		element.setName("");
	}

	public UserBuilder withName(String param) {
		element.setName(param);
		return this;
	}

	public User build() {
		return element;
	}
}