public BeanContainer(AppConfig config){ this.config = config; this.beanConfigurator = new BeanConfigurator(config); this.placeholderResolver = config.getPlaceholderResolver(); this.annotationBeanDefinitionLoader = new AnnotationBeanDefinitionLoader(); this.xmlBeanDefinitionLoader = new XmlBeanDefinitionLoader(this); }
protected void loadSqls(SqlReaderContext context, Resource resource, boolean defaultOverride, Map<String,DefaultSqlCommand> sqls) throws IOException{ try(XmlReader reader = XML.createReader(resource) ){ reader.setPlaceholderResolver(context.getConfigContext().getAppContext().getConfig().getPlaceholderResolver()); loadSqls(context, resource, reader, defaultOverride, sqls); } }
protected void load(LoadContext context, AppResource... resources) { for(AppResource ar : resources){ Resource resource = ar.getResource(); if(resource.isReadable() && resource.exists()){ XmlReader reader = null; try{ String resourceUrl = resource.getURL().toString(); if(context.resources.contains(resourceUrl)){ throw new AppConfigException("Cyclic importing detected, please check your config : " + resourceUrl); } context.resources.add(resourceUrl); reader = XML.createReader(resource); reader.setPlaceholderResolver(appConfig.getPlaceholderResolver()); context.setDefaultOverride(ar.isDefaultOverride()); loadModels(context,resource,reader); context.resetDefaultOverride(); }catch(RuntimeException e){ throw e; }catch(Exception e){ throw new MappingConfigException("Error loading models from 'classpath:" + resource.getClasspath() + "', msg : " + e.getMessage(),e); }finally{ IO.close(reader); } } } }
protected void loadDomains(LoadContext context, AppResource... resources){ for(int i=0;i<resources.length;i++){ AppResource ar = resources[i]; Resource resource = ar.getResource(); if(resource.isReadable() && resource.exists()){ XmlReader reader = null; try{ String resourceUrl = resource.getURL().toString(); if(context.resources.contains(resourceUrl)){ throw new AppConfigException("Cyclic importing detected, please check your config : " + resourceUrl); } context.resources.add(resourceUrl); reader = XML.createReader(resource); reader.setPlaceholderResolver(config.getPlaceholderResolver()); context.setDefaultOverride(ar.isDefaultOverride()); loadDomains(context,resource,reader); context.resetDefaultOverride(); }catch(DomainConfigException e){ throw e; }catch(Exception e){ throw new DomainConfigException("Error loading domain from 'classpath:" + resource.getClasspath() + "', msg : " + e.getMessage(),e); }finally{ IO.close(reader); } } } }