001 package org.springframework.richclient.widget.table;
002
003 import java.lang.reflect.InvocationTargetException;
004
005 /**
006 * Accessor interface: defines a way to access a value and it's type.
007 *
008 * @author Jan Hoskens
009 * @since 0.5.0
010 */
011 public interface Accessor
012 {
013
014 /**
015 * Get the value from the given target entity.
016 *
017 * @param fromEntity
018 * the entity from which the value should be obtained.
019 * @return the value.
020 * @throws IllegalAccessException
021 * @throws InvocationTargetException
022 */
023 Object getValue(Object fromEntity) throws IllegalAccessException, InvocationTargetException;
024
025 /**
026 * Returns the property type of the value that can be obtained through this accessor.
027 */
028 Class<?> getPropertyType();
029 }