/** * Properties.java * * Created on 24.08.2010 */ package org.mage.plugins.card.dl.beans.properties; import java.beans.PropertyChangeListener; import java.util.List; import java.util.Map; import java.util.Set; import org.mage.plugins.card.dl.beans.properties.bound.BoundProperties; /** * The class Properties. A Properties object is a factory for bean properties. For example, the * {@link BoundProperties} class produces properties that can be observed using {@link PropertyChangeListener}s. * * @version V0.0 24.08.2010 * @author Clemens Koza */ public interface Properties { <T> Property<T> property(String name, Property<T> property); <E> List<E> list(String name, List<E> list); <E> Set<E> set(String name, Set<E> set); <K, V> Map<K, V> map(String name, Map<K, V> map); <T> Property<T> property(String name, T value); <T> Property<T> property(String name); <E> List<E> list(String name); <E> Set<E> set(String name); <K, V> Map<K, V> map(String name); }