Example usage for org.springframework.beans AbstractPropertyAccessor setPropertyValue

List of usage examples for org.springframework.beans AbstractPropertyAccessor setPropertyValue

Introduction

In this page you can find the example usage for org.springframework.beans AbstractPropertyAccessor setPropertyValue.

Prototype

@Override
public abstract void setPropertyValue(String propertyName, @Nullable Object value) throws BeansException;

Source Link

Document

Actually set a property value.

Usage

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setEnumProperty() {
    EnumTester target = new EnumTester();
    AbstractPropertyAccessor accessor = createAccessor(target);

    accessor.setPropertyValue("autowire", "BY_NAME");
    assertEquals(Autowire.BY_NAME, target.getAutowire());

    accessor.setPropertyValue("autowire", "  BY_TYPE ");
    assertEquals(Autowire.BY_TYPE, target.getAutowire());

    try {// w ww.j a va  2  s.com
        accessor.setPropertyValue("autowire", "NHERITED");
        fail("Should have thrown TypeMismatchException");
    } catch (TypeMismatchException ex) {
        // expected
    }
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setGenericEnumProperty() {
    EnumConsumer target = new EnumConsumer();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.setPropertyValue("enumValue", TestEnum.class.getName() + ".TEST_VALUE");
    assertEquals(TestEnum.TEST_VALUE, target.getEnumValue());
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setWildcardEnumProperty() {
    WildcardEnumConsumer target = new WildcardEnumConsumer();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.setPropertyValue("enumValue", TestEnum.class.getName() + ".TEST_VALUE");
    assertEquals(TestEnum.TEST_VALUE, target.getEnumValue());
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setPropertiesProperty() throws Exception {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.setPropertyValue("name", "ptest");

    // Note format...
    String ps = "peace=war\nfreedom=slavery";
    accessor.setPropertyValue("properties", ps);

    assertTrue("name was set", target.name.equals("ptest"));
    assertTrue("properties non null", target.properties != null);
    String freedomVal = target.properties.getProperty("freedom");
    String peaceVal = target.properties.getProperty("peace");
    assertTrue("peace==war", peaceVal.equals("war"));
    assertTrue("Freedom==slavery", freedomVal.equals("slavery"));
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setStringArrayProperty() throws Exception {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);

    accessor.setPropertyValue("stringArray", new String[] { "foo", "fi", "fi", "fum" });
    assertTrue("stringArray length = 4", target.stringArray.length == 4);
    assertTrue("correct values", target.stringArray[0].equals("foo") && target.stringArray[1].equals("fi")
            && target.stringArray[2].equals("fi") && target.stringArray[3].equals("fum"));

    List<String> list = new ArrayList<>();
    list.add("foo");
    list.add("fi");
    list.add("fi");
    list.add("fum");
    accessor.setPropertyValue("stringArray", list);
    assertTrue("stringArray length = 4", target.stringArray.length == 4);
    assertTrue("correct values", target.stringArray[0].equals("foo") && target.stringArray[1].equals("fi")
            && target.stringArray[2].equals("fi") && target.stringArray[3].equals("fum"));

    Set<String> set = new HashSet<>();
    set.add("foo");
    set.add("fi");
    set.add("fum");
    accessor.setPropertyValue("stringArray", set);
    assertTrue("stringArray length = 3", target.stringArray.length == 3);
    List<String> result = Arrays.asList(target.stringArray);
    assertTrue("correct values", result.contains("foo") && result.contains("fi") && result.contains("fum"));

    accessor.setPropertyValue("stringArray", "one");
    assertTrue("stringArray length = 1", target.stringArray.length == 1);
    assertTrue("stringArray elt is ok", target.stringArray[0].equals("one"));

    accessor.setPropertyValue("stringArray", null);
    assertTrue("stringArray is null", target.stringArray == null);
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setStringArrayPropertyWithCustomStringEditor() throws Exception {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.registerCustomEditor(String.class, "stringArray", new PropertyEditorSupport() {
        @Override//  w ww.  j av a 2s . c  om
        public void setAsText(String text) {
            setValue(text.substring(1));
        }
    });

    accessor.setPropertyValue("stringArray", new String[] { "4foo", "7fi", "6fi", "5fum" });
    assertTrue("stringArray length = 4", target.stringArray.length == 4);
    assertTrue("correct values", target.stringArray[0].equals("foo") && target.stringArray[1].equals("fi")
            && target.stringArray[2].equals("fi") && target.stringArray[3].equals("fum"));

    List<String> list = new ArrayList<>();
    list.add("4foo");
    list.add("7fi");
    list.add("6fi");
    list.add("5fum");
    accessor.setPropertyValue("stringArray", list);
    assertTrue("stringArray length = 4", target.stringArray.length == 4);
    assertTrue("correct values", target.stringArray[0].equals("foo") && target.stringArray[1].equals("fi")
            && target.stringArray[2].equals("fi") && target.stringArray[3].equals("fum"));

    Set<String> set = new HashSet<>();
    set.add("4foo");
    set.add("7fi");
    set.add("6fum");
    accessor.setPropertyValue("stringArray", set);
    assertTrue("stringArray length = 3", target.stringArray.length == 3);
    List<String> result = Arrays.asList(target.stringArray);
    assertTrue("correct values", result.contains("foo") && result.contains("fi") && result.contains("fum"));

    accessor.setPropertyValue("stringArray", "8one");
    assertTrue("stringArray length = 1", target.stringArray.length == 1);
    assertTrue("correct values", target.stringArray[0].equals("one"));
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setStringArrayPropertyWithStringSplitting() throws Exception {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.useConfigValueEditors();/*from w w w . java2  s  . com*/
    accessor.setPropertyValue("stringArray", "a1,b2");
    assertTrue("stringArray length = 2", target.stringArray.length == 2);
    assertTrue("correct values", target.stringArray[0].equals("a1") && target.stringArray[1].equals("b2"));
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setStringArrayPropertyWithCustomStringDelimiter() throws Exception {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.registerCustomEditor(String[].class, "stringArray", new StringArrayPropertyEditor("-"));
    accessor.setPropertyValue("stringArray", "a1-b2");
    assertTrue("stringArray length = 2", target.stringArray.length == 2);
    assertTrue("correct values", target.stringArray[0].equals("a1") && target.stringArray[1].equals("b2"));
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setStringArrayWithAutoGrow() throws Exception {
    StringArrayBean target = new StringArrayBean();
    AbstractPropertyAccessor accessor = createAccessor(target);
    accessor.setAutoGrowNestedPaths(true);

    accessor.setPropertyValue("array[0]", "Test0");
    assertEquals(1, target.getArray().length);

    accessor.setPropertyValue("array[2]", "Test2");
    assertEquals(3, target.getArray().length);
    assertTrue("correct values", target.getArray()[0].equals("Test0") && target.getArray()[1] == null
            && target.getArray()[2].equals("Test2"));
}

From source file:org.springframework.beans.AbstractPropertyAccessorTests.java

@Test
public void setIntArrayProperty() {
    PropsTester target = new PropsTester();
    AbstractPropertyAccessor accessor = createAccessor(target);

    accessor.setPropertyValue("intArray", new int[] { 4, 5, 2, 3 });
    assertTrue("intArray length = 4", target.intArray.length == 4);
    assertTrue("correct values", target.intArray[0] == 4 && target.intArray[1] == 5 && target.intArray[2] == 2
            && target.intArray[3] == 3);

    accessor.setPropertyValue("intArray", new String[] { "4", "5", "2", "3" });
    assertTrue("intArray length = 4", target.intArray.length == 4);
    assertTrue("correct values", target.intArray[0] == 4 && target.intArray[1] == 5 && target.intArray[2] == 2
            && target.intArray[3] == 3);

    List<Object> list = new ArrayList<>();
    list.add(4);/*from   w w  w .  j av  a2 s. com*/
    list.add("5");
    list.add(2);
    list.add("3");
    accessor.setPropertyValue("intArray", list);
    assertTrue("intArray length = 4", target.intArray.length == 4);
    assertTrue("correct values", target.intArray[0] == 4 && target.intArray[1] == 5 && target.intArray[2] == 2
            && target.intArray[3] == 3);

    Set<Object> set = new HashSet<>();
    set.add("4");
    set.add(5);
    set.add("3");
    accessor.setPropertyValue("intArray", set);
    assertTrue("intArray length = 3", target.intArray.length == 3);
    List<Integer> result = new ArrayList<>();
    result.add(target.intArray[0]);
    result.add(target.intArray[1]);
    result.add(target.intArray[2]);
    assertTrue("correct values", result.contains(new Integer(4)) && result.contains(new Integer(5))
            && result.contains(new Integer(3)));

    accessor.setPropertyValue("intArray", new Integer[] { 1 });
    assertTrue("intArray length = 4", target.intArray.length == 1);
    assertTrue("correct values", target.intArray[0] == 1);

    accessor.setPropertyValue("intArray", new Integer(1));
    assertTrue("intArray length = 4", target.intArray.length == 1);
    assertTrue("correct values", target.intArray[0] == 1);

    accessor.setPropertyValue("intArray", new String[] { "1" });
    assertTrue("intArray length = 4", target.intArray.length == 1);
    assertTrue("correct values", target.intArray[0] == 1);

    accessor.setPropertyValue("intArray", "1");
    assertTrue("intArray length = 4", target.intArray.length == 1);
    assertTrue("correct values", target.intArray[0] == 1);
}