List of usage examples for org.springframework.beans AbstractPropertyAccessor getPropertyValue
@Override @Nullable public abstract Object getPropertyValue(String propertyName) throws BeansException;
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getSimpleProperty() { Simple target = new Simple("John", 2); AbstractPropertyAccessor accessor = createAccessor(target); assertThat(accessor.getPropertyValue("name"), is("John")); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getNestedProperty() { Person target = createPerson("John", "London", "UK"); AbstractPropertyAccessor accessor = createAccessor(target); assertThat(accessor.getPropertyValue("address.city"), is("London")); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getNestedDeepProperty() { Person target = createPerson("John", "London", "UK"); AbstractPropertyAccessor accessor = createAccessor(target); assertThat(accessor.getPropertyValue("address.country.name"), is("UK")); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getAnotherNestedDeepProperty() { ITestBean target = new TestBean("rod", 31); ITestBean kerry = new TestBean("kerry", 35); target.setSpouse(kerry);/* w ww .ja v a2 s. co m*/ kerry.setSpouse(target); AbstractPropertyAccessor accessor = createAccessor(target); Integer KA = (Integer) accessor.getPropertyValue("spouse.age"); assertTrue("kerry is 35", KA == 35); Integer RA = (Integer) accessor.getPropertyValue("spouse.spouse.age"); assertTrue("rod is 31, not" + RA, RA == 31); ITestBean spousesSpouse = (ITestBean) accessor.getPropertyValue("spouse.spouse"); assertTrue("spousesSpouse = initial point", target == spousesSpouse); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getPropertyIntermediatePropertyIsNull() { Person target = createPerson("John", "London", "UK"); target.address = null;/*from ww w .j a va2s. c o m*/ AbstractPropertyAccessor accessor = createAccessor(target); try { accessor.getPropertyValue("address.country.name"); fail("Should have failed to get value with null intermediate path"); } catch (NullValueInNestedPathException e) { assertEquals("address", e.getPropertyName()); assertEquals(Person.class, e.getBeanClass()); } }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getPropertyIntermediatePropertyIsNullWithAutoGrow() { Person target = createPerson("John", "London", "UK"); target.address = null;//from ww w . j ava 2 s .c o m AbstractPropertyAccessor accessor = createAccessor(target); accessor.setAutoGrowNestedPaths(true); assertEquals("DefaultCountry", accessor.getPropertyValue("address.country.name")); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getUnknownProperty() { Simple target = new Simple("John", 2); AbstractPropertyAccessor accessor = createAccessor(target); try {/*from w w w . ja v a2s . co m*/ accessor.getPropertyValue("foo"); fail("Should have failed to get an unknown property."); } catch (NotReadablePropertyException e) { assertEquals(Simple.class, e.getBeanClass()); assertEquals("foo", e.getPropertyName()); } }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void getUnknownNestedProperty() { Person target = createPerson("John", "London", "UK"); AbstractPropertyAccessor accessor = createAccessor(target); thrown.expect(NotReadablePropertyException.class); accessor.getPropertyValue("address.bar"); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void setNestedPropertyPolymorphic() throws Exception { ITestBean target = new TestBean("rod", 31); ITestBean kerry = new Employee(); AbstractPropertyAccessor accessor = createAccessor(target); accessor.setPropertyValue("spouse", kerry); accessor.setPropertyValue("spouse.age", new Integer(35)); accessor.setPropertyValue("spouse.name", "Kerry"); accessor.setPropertyValue("spouse.company", "Lewisham"); assertTrue("kerry name is Kerry", kerry.getName().equals("Kerry")); assertTrue("nested set worked", target.getSpouse() == kerry); assertTrue("no back relation", kerry.getSpouse() == null); accessor.setPropertyValue(new PropertyValue("spouse.spouse", target)); assertTrue("nested set worked", kerry.getSpouse() == target); AbstractPropertyAccessor kerryAccessor = createAccessor(kerry); assertTrue("spouse.spouse.spouse.spouse.company=Lewisham", "Lewisham".equals(kerryAccessor.getPropertyValue("spouse.spouse.spouse.spouse.company"))); }
From source file:org.springframework.beans.AbstractPropertyAccessorTests.java
@Test public void setAnotherNestedProperty() throws Exception { ITestBean target = new TestBean("rod", 31); ITestBean kerry = new TestBean("kerry", 0); AbstractPropertyAccessor accessor = createAccessor(target); accessor.setPropertyValue("spouse", kerry); assertTrue("nested set worked", target.getSpouse() == kerry); assertTrue("no back relation", kerry.getSpouse() == null); accessor.setPropertyValue(new PropertyValue("spouse.spouse", target)); assertTrue("nested set worked", kerry.getSpouse() == target); assertTrue("kerry age not set", kerry.getAge() == 0); accessor.setPropertyValue(new PropertyValue("spouse.age", 35)); assertTrue("Set primitive on spouse", kerry.getAge() == 35); assertEquals(kerry, accessor.getPropertyValue("spouse")); assertEquals(target, accessor.getPropertyValue("spouse.spouse")); }