From a3af9e73301f8f559134f7ac35d876ec20ad7d77 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Wed, 20 May 2009 00:12:19 +0000 Subject: [PATCH] revised use of id and display name (id may be null; SPR-5761) --- .../AbstractRefreshableConfigApplicationContext.java | 3 ++- .../ContextSingletonBeanFactoryLocatorTests.java | 8 ++++---- .../support/ClassPathXmlApplicationContextTests.java | 11 ++++++----- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/org.springframework.context/src/main/java/org/springframework/context/support/AbstractRefreshableConfigApplicationContext.java b/org.springframework.context/src/main/java/org/springframework/context/support/AbstractRefreshableConfigApplicationContext.java index ca96d90b057..3dda2fe61bb 100644 --- a/org.springframework.context/src/main/java/org/springframework/context/support/AbstractRefreshableConfigApplicationContext.java +++ b/org.springframework.context/src/main/java/org/springframework/context/support/AbstractRefreshableConfigApplicationContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -137,6 +137,7 @@ public abstract class AbstractRefreshableConfigApplicationContext extends Abstra public void setBeanName(String name) { if (!this.setIdCalled) { super.setId(name); + setDisplayName("ApplicationContext '" + name + "'"); } } diff --git a/org.springframework.context/src/test/java/org/springframework/context/access/ContextSingletonBeanFactoryLocatorTests.java b/org.springframework.context/src/test/java/org/springframework/context/access/ContextSingletonBeanFactoryLocatorTests.java index 1afbdac7cdd..6d2b96e92b7 100644 --- a/org.springframework.context/src/test/java/org/springframework/context/access/ContextSingletonBeanFactoryLocatorTests.java +++ b/org.springframework.context/src/test/java/org/springframework/context/access/ContextSingletonBeanFactoryLocatorTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,8 +17,8 @@ package org.springframework.context.access; import static org.junit.Assert.*; - import org.junit.Test; + import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.access.BeanFactoryLocator; import org.springframework.beans.factory.access.BeanFactoryReference; @@ -58,11 +58,11 @@ public class ContextSingletonBeanFactoryLocatorTests extends SingletonBeanFactor BeanFactory fac = bfr.getFactory(); assertTrue(fac instanceof ApplicationContext); assertEquals("a.qualified.name.of.some.sort", ((ApplicationContext) fac).getId()); - assertEquals("a.qualified.name.of.some.sort", ((ApplicationContext) fac).getDisplayName()); + assertTrue(((ApplicationContext) fac).getDisplayName().contains("a.qualified.name.of.some.sort")); BeanFactoryReference bfr2 = facLoc.useBeanFactory("another.qualified.name"); BeanFactory fac2 = bfr2.getFactory(); assertEquals("another.qualified.name", ((ApplicationContext) fac2).getId()); - assertEquals("another.qualified.name", ((ApplicationContext) fac2).getDisplayName()); + assertTrue(((ApplicationContext) fac2).getDisplayName().contains("another.qualified.name")); assertTrue(fac2 instanceof ApplicationContext); } diff --git a/org.springframework.context/src/test/java/org/springframework/context/support/ClassPathXmlApplicationContextTests.java b/org.springframework.context/src/test/java/org/springframework/context/support/ClassPathXmlApplicationContextTests.java index ce1b62e8e30..6725bf281a9 100644 --- a/org.springframework.context/src/test/java/org/springframework/context/support/ClassPathXmlApplicationContextTests.java +++ b/org.springframework.context/src/test/java/org/springframework/context/support/ClassPathXmlApplicationContextTests.java @@ -133,8 +133,8 @@ public final class ClassPathXmlApplicationContextTests { } catch (BeanCreationException ex) { assertTrue(ex.contains(TypeMismatchException.class)); - assertTrue(ex.toString().indexOf("someMessageSource") != -1); - assertTrue(ex.toString().indexOf("useCodeAsDefaultMessage") != -1); + assertTrue(ex.toString().contains("someMessageSource")); + assertTrue(ex.toString().contains("useCodeAsDefaultMessage")); checkExceptionFromInvalidValueType(ex); checkExceptionFromInvalidValueType(new ExceptionInInitializerError(ex)); assertFalse(context.isActive()); @@ -146,8 +146,8 @@ public final class ClassPathXmlApplicationContextTests { ex.printStackTrace(new PrintStream(baos)); String dump = FileCopyUtils.copyToString( new InputStreamReader(new ByteArrayInputStream(baos.toByteArray()))); - assertTrue(dump.indexOf("someMessageSource") != -1); - assertTrue(dump.indexOf("useCodeAsDefaultMessage") != -1); + assertTrue(dump.contains("someMessageSource")); + assertTrue(dump.contains("useCodeAsDefaultMessage")); } @Test @@ -381,13 +381,14 @@ public final class ClassPathXmlApplicationContextTests { public void testGenericApplicationContextWithXmlBeanDefinitionsAndSpecifiedId() { GenericApplicationContext ctx = new GenericApplicationContext(); ctx.setId("testContext"); + ctx.setDisplayName("Test Context"); XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(ctx); reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_B, getClass())); reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_C, getClass())); reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_A, getClass())); ctx.refresh(); assertEquals("testContext", ctx.getId()); - assertEquals("testContext", ctx.getDisplayName()); + assertEquals("Test Context", ctx.getDisplayName()); assertTrue(ctx.containsBean("service")); assertTrue(ctx.containsBean("logicOne")); assertTrue(ctx.containsBean("logicTwo"));