001 package org.trails.finder;
002
003 import org.apache.tapestry.IRequestCycle;
004 import org.apache.tapestry.components.Block;
005 import org.apache.tapestry.util.ComponentAddress;
006 import org.trails.descriptor.IPropertyDescriptor;
007
008 public interface BlockFinder
009 {
010
011 /**
012 * @return the component address for a block for the specified property
013 */
014 public abstract ComponentAddress findBlockAddress(IPropertyDescriptor descriptor);
015
016 /**
017 * Return the block for the specified property
018 *
019 * @param cycle
020 * @param descriptor
021 * @return
022 */
023 public Block findBlock(IRequestCycle cycle, IPropertyDescriptor descriptor);
024
025 public ComponentAddress getDefaultBlockAddress();
026 }