DomainBuilder

DomainBuilder is a builder for an arbitrary graph of Grails domain objects. It is based on Groovy's ObjectGraphBuilder. DomainBuilder can be especially helpful in creating BootStrap data.

With the following domain classes:  

class Company
{
	String name
	static hasMany = [employees:Employee]
}

class Employee
{
	int employeeId
	String name
	Address address
	Company company
}

class Address
{
	String street
	static belongsTo = Employee
}

A company with employees can be built with:

def builder = new DomainBuilder()

def company = builder.company( name: "Spacely Space Sprockets" ) {
	employee(  name: 'Cosmo', employeeId: 1 ) {
		address( street: '123 Groovy Rd' )
	}
	employee(  name: 'George', employeeId: 2 )
}

assert company.employees.size() == 2

The description of ObjectGraphBuilder includes a similar example along with more details about what is going on behind the scenes.

Labels

 
(None)