Skip to content

Latest commit

 

History

History
42 lines (30 loc) · 2.18 KB

model-object-namespace.md

File metadata and controls

42 lines (30 loc) · 2.18 KB

Models Namespace

The default namespace is not specifying one. This namespace is used to retreive either named mappings or full component paths.

1st Level DSL

DSL Description
empty Same as saying id. Get a mapped instance with the same name as defined in the property, argument or setter method.
id Get a mapped instance with the same name as defined in the property, argument or setter method.
model Get a mapped instance with the same name as defined in the property, argument or setter method.

2nd Level DSL

DSL Description
model:{name} Get a mapped instance by using the second part of the DSL as the mapping name.
id:{name} Get a mapped instance by using the second part of the DSL as the mapping name.

3rd Level DSL

DSL Description
model:{name}:{method} Get the {name} instance object, call the {method} and inject the results
id:{name}:{method} Get the {name} instance object, call the {method} and inject the results
// Let's assume we have mapped a few objects called: UserService, SecurityService and RoleService

// Empty inject, use the property name, argument name or setter name
property name="userService" inject;

// Using the name of the mapping as the value of the inject
property name="security" inject="SecurityService";

// Using the full namespace
property name="userService" inject="id:UserService";
property name="userService" inject="model:UserService";

// Simple factory method
property name="roles" inject="id:RoleService:getRoles";