private static PortalConfig toPortal(UIPortal uiPortal) { PortalConfig model = new PortalConfig( uiPortal.getSiteType().getName(), uiPortal.getName(), uiPortal.getStorageId()); model.setAccessPermissions(uiPortal.getAccessPermissions()); model.setEditPermission(uiPortal.getEditPermission()); model.setLabel(uiPortal.getLabel()); model.setDescription(uiPortal.getDescription()); model.setLocale(uiPortal.getLocale()); model.setSkin(uiPortal.getSkin()); model.setModifiable(uiPortal.isModifiable()); model.setProperties(uiPortal.getProperties()); model.setPortalRedirects(uiPortal.getPortalRedirects()); model.setPortalLayout(new Container()); List<UIComponent> children = uiPortal.getChildren(); if (children == null) return model; ArrayList<ModelObject> newChildren = new ArrayList<ModelObject>(); for (UIComponent child : children) { ModelObject component = buildModelObject(child); if (component != null) newChildren.add(component); } model.getPortalLayout().setChildren(newChildren); model.getPortalLayout().setMoveAppsPermissions(uiPortal.getMoveAppsPermissions()); model.getPortalLayout().setMoveContainersPermissions(uiPortal.getMoveContainersPermissions()); return model; }