Creating Entities
Given is the following entity:
public interface Person extends Entity
{
	public String firstName();
	public String lastName();
}So how is it done?
Since the code generator provides a creator, we can use it to create a new Person.
Person john = PersonCreator.New()
	.firstName("John")
	.lastName("Doe")
	.create();Let’s see what the debugger displays if we run this code:
 
There’s always an entity chain, with
- 
The identity ( PersonEntity) as outer layer
- 
Then the logic layers, none here in our example 
- 
And the inner most layer is always the data ( PersonData), which holds the properties.
The properties can be accessed like defined in the entity’s interface:
String firstName = john.firstName(); // -> John
String lastName  = john.lastName();  // -> DoeThe creator can also be used to create copies. Just hand over the existing one as template:
Person mike = PersonCreator.New(john) // use John as template
	.firstName("Mike")
	.create();This will create a "Mike Doe".