001package io.ebean.plugin; 002 003import javax.annotation.Nonnull; 004 005/** 006 * Property of a entity bean that can be read. 007 */ 008public interface Property { 009 010 /** 011 * Return the name of the property. 012 */ 013 @Nonnull 014 String getName(); 015 016 /** 017 * Return the type of the property. 018 */ 019 @Nonnull 020 Class<?> getPropertyType(); 021 022 /** 023 * Return the value of the property on the given bean. 024 */ 025 Object getVal(Object bean); 026 027 /** 028 * Return true if this is a OneToMany or ManyToMany property. 029 */ 030 boolean isMany(); 031}