ComponentLoaderContext loaderContext = new ComponentLoaderContext(options); loaderContext.setCurrentFrameId(windowInfo.getId()); loaderContext.setFullFrameId(windowInfo.getId()); loaderContext.setFrame(fragment); loaderContext.setParent(null); loaderContext.setScreenData(UiControllerUtils.getScreenData(parent)); if (parent instanceof LegacyFrame) { loaderContext.setDsContext(((LegacyFrame) parent).getDsContext()); ComponentLoaderContext innerContext = new ComponentLoaderContext(options); innerContext.setCurrentFrameId(windowInfo.getId()); innerContext.setFullFrameId(windowInfo.getId()); innerContext.setFrame(fragment); innerContext.setParent(loaderContext); innerContext.getParams()); loaderContext.getInjectTasks().addAll(innerContext.getInjectTasks()); loaderContext.getInitTasks().addAll(innerContext.getInitTasks()); loaderContext.getPostInitTasks().addAll(innerContext.getPostInitTasks()); loaderContext.executeInjectTasks();
protected void initDsContext(Window window, Element element, ComponentLoaderContext componentLoaderContext) { DsContext dsContext = loadDsContext(element); initDatasources(window, dsContext, componentLoaderContext.getParams()); componentLoaderContext.setDsContext(dsContext); }
FrameOwner hostController = parentContext.getFrame().getFrameOwner(); setFrame(controller, fragment); setScreenContext(controller, new ScreenContextImpl(windowInfo, parentContext.getOptions(), hostScreenContext.getScreens(), hostScreenContext.getDialogs(), if (parentContext.getFullFrameId() != null) { frameId = parentContext.getFullFrameId() + "." + frameId; innerContext = new ComponentLoaderContext(context.getOptions()); innerContext.setCurrentFrameId(fragmentId); innerContext.setFullFrameId(frameId); innerContext.setFrame(fragment); innerContext.setParent(parentContext);
ComponentLoaderContext componentLoaderContext = new ComponentLoaderContext(options); componentLoaderContext.setFullFrameId(windowInfo.getId()); componentLoaderContext.setCurrentFrameId(windowInfo.getId()); componentLoaderContext.setFrame(window); componentLoaderContext.executeInjectTasks(); componentLoaderContext.executeInitTasks(); componentLoaderContext.executePostInitTasks();
ComponentLoaderContext parentContext = (ComponentLoaderContext) getContext(); parentContext.getInjectTasks().addAll(innerContext.getInjectTasks()); parentContext.getInitTasks().addAll(innerContext.getInitTasks()); parentContext.getPostInitTasks().addAll(innerContext.getPostInitTasks());
protected void loadScreenData(Window window, Element element) { Element dataEl = element.element("data"); if (dataEl != null) { ScreenDataXmlLoader screenDataXmlLoader = beanLocator.get(ScreenDataXmlLoader.class); ScreenData screenData = UiControllerUtils.getScreenData(window.getFrameOwner()); screenDataXmlLoader.load(screenData, dataEl, null); ((ComponentLoaderContext) context).setScreenData(screenData); } }
protected void loadDsContext(@Nullable Element dsContextElement) { DsContext dsContext = null; if (resultComponent.getFrameOwner() instanceof LegacyFrame) { DsContextLoader dsContextLoader; DsContext parentDsContext = context.getParent().getDsContext(); if (parentDsContext != null){ dsContextLoader = new DsContextLoader(parentDsContext.getDataSupplier()); } else { dsContextLoader = new DsContextLoader(new GenericDataSupplier()); } dsContext = dsContextLoader.loadDatasources(dsContextElement, parentDsContext, getContext().getAliasesMap()); ((ComponentLoaderContext) context).setDsContext(dsContext); } if (dsContext != null) { FrameOwner frameOwner = getContext().getFrame().getFrameOwner(); if (frameOwner instanceof LegacyFrame) { LegacyFrame frame = (LegacyFrame) frameOwner; frame.setDsContext(dsContext); for (Datasource ds : dsContext.getAll()) { if (ds instanceof DatasourceImplementation) { ((DatasourceImplementation) ds).initialized(); } } dsContext.setFrameContext(resultComponent.getContext()); } } }
FrameOwner hostController = parentContext.getFrame().getFrameOwner(); setFrame(controller, fragment); setScreenContext(controller, new ScreenContextImpl(windowInfo, parentContext.getOptions(), hostScreenContext.getScreens(), hostScreenContext.getDialogs(), if (parentContext.getFullFrameId() != null) { frameId = parentContext.getFullFrameId() + "." + frameId; innerContext = new ComponentLoaderContext(context.getOptions()); innerContext.setCurrentFrameId(fragmentId); innerContext.setFullFrameId(frameId); innerContext.setFrame(fragment); innerContext.setParent(parentContext);
ComponentLoaderContext parentContext = (ComponentLoaderContext) getContext(); parentContext.getInjectTasks().addAll(innerContext.getInjectTasks()); parentContext.getInitTasks().addAll(innerContext.getInitTasks()); parentContext.getPostInitTasks().addAll(innerContext.getPostInitTasks());
protected void loadScreenData(Element dataEl) { ScreenData hostScreenData = null; Context parent = context.getParent(); while (hostScreenData == null && parent != null) { hostScreenData = parent.getScreenData(); parent = parent.getParent(); } ScreenDataXmlLoader screenDataXmlLoader = beanLocator.get(ScreenDataXmlLoader.class); ScreenData screenData = UiControllerUtils.getScreenData(resultComponent.getFrameOwner()); screenDataXmlLoader.load(screenData, dataEl, hostScreenData); ((ComponentLoaderContext) context).setScreenData(screenData); }