private void populateSubDomainHierarchyLazy(Space space,DimensionIndex root,Axis axis,ArrayList<DimensionIndex> result,IDomain type) throws InterruptedException, ScopeException {
  Object adapter=type.getAdapter(Domain.class);
  if (adapter != null && adapter instanceof Domain) {
    Domain target=(Domain)adapter;
    logger.info("creating subdomain for domain " + target.toString() + " in "+ space.toString());
    Axis source=axis;
    try {
      DimensionIndex self=new DimensionIndex(null,source);
      subdomains.add(self);
    }
 catch (    DimensionStoreException e) {
      logger.error("failed to create subdomain for domain " + target.toString() + " in "+ space.toString());
    }
  }
 else {
    logger.error("Unable to resolve the sub-domain");
    if (!dimensionIndexInList(result,axis)) {
      result.add(DimensionIndexCreationUtils.createInvalidIndex(root,axis,"Unable to resolve the sub-domain"));
    }
  }
}

private void populateSubDomainHierarchyLazy ( Space space , DimensionIndex root , Axis axis , ArrayList < DimensionIndex > result , IDomain type ) throws InterruptedException , ScopeException { Object adapter = type . getAdapter ( Domain . class ) ; if ( adapter != null && adapter instanceof Domain ) { Domain target = ( Domain ) adapter ; logger . info ( "creating subdomain for domain " + target . toString ( ) + " in " + space . toString ( ) ) ; Axis source = axis ; try { DimensionIndex self = new DimensionIndex ( null , source ) ; subdomains . add ( self ) ; } catch ( DimensionStoreException e ) { logger . error ( "failed to create subdomain for domain " + target . toString ( ) + " in " + space . toString ( ) ) ; } } else { logger . error ( "Unable to resolve the sub-domain" ) ; if ( ! dimensionIndexInList ( result , axis ) ) { result . add ( DimensionIndexCreationUtils . createInvalidIndex ( root , axis , "Unable to resolve the sub-domain" ) ) ; } } }
do not actually populate the subdomains , just create a dimensionindex for the sub - domain link , and delay the actual creation of the content for latter
