Vaadin 8 TreeGrid Lazy Load Hierarchical Data How to ...

Hy Can some one help me with Vaadin 8 TreeGrid?
I have SQl for parent:
select ID,COMPANY_NAME,IS_ACTIVE from WEB_COMPANIES
and SQL for childs :
select MODULE_ID,MODULE_NAME,MODULE_CONNECTION,IS_ACTIVE FROM WEB_GET_COMPANY_MODULES(?)
ID from WEB_COMPANIES table goes to prcedure WEB_GET_COMPANY_MODULES as input parameter
I want to Lazy Load Hierarchical Data from a Back End.
I create 2 class

public class TreeGridCompaniesModules {
	private final Object company_id;
	private final Object company_name;
	private final Object company_is_active;

	private final Object module_id;
	private final Object module_name;
	private final Object module_connection;
	private final Object is_active;
	
	private final Company company
	
	public TreeGridCompanies(GroovyRowResult queryResult, Company company) {
		this.company = company
		module_id = (Object)queryResult["ID"]
;
		module_name = (Object)queryResult["MODULE_NAME"]
;
		module_connection = (Object)queryResult["MODULE_CONNECTION"]
;
		is_active = (Object)queryResult["IS_ACTIVE"]
;
	}
	
	public Object ID() { 
		return module_id;
	}
	
	public Object MODULE_NAME() { 
		return module_name;
	}
	
	public Object MODULE_CONNECTION() {
		return module_connection;
	}
	
	public Object IS_ACTIVE() {
		return is_active;
	}
}

public class Company {
	private final Object id;
	private final Object name;
	private final Object is_active;
	
	public Company(GroovyRowResult queryResult) {
		id = (Object)queryResult["ID"]
;
		name = (Object)queryResult["COMPANY_NAME"]
;
		is_active = (Object)queryResult["IS_ACTIVE"]
;
	}
	
	public Object ID() { 
		return id;
	}
	
	public Object COMPANY_NAME() { 
		return name;
	}

	public Object IS_ACTIVE() {
		return is_active;
	}
}

May be there is some examples for BackEndHierarchicalDataProvider