1 /* 2 * Copyright 2004-2008 the Seasar Foundation and the Others. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 13 * either express or implied. See the License for the specific language 14 * governing permissions and limitations under the License. 15 */ 16 package org.seasar.uruma.context; 17 18 import java.util.Collection; 19 import java.util.List; 20 21 /** 22 * {@link WidgetHandle} を保持するクラスのためのインターフェースです。<br /> 23 * 24 * @author y-komori 25 */ 26 public interface WidgetHolder { 27 /** 28 * すべての {@link WidgetHandle} のコレクションを返します。 29 * 30 * @return {@link WidgetHandle} のコレクション 31 */ 32 public Collection<WidgetHandle> getWidgetHandles(); 33 34 /** 35 * <code>handleId</code> で指定された ID を持つ {@link WidgetHandle} を返します。<br /> 36 * 37 * @param handleId 38 * ハンドルID 39 * @return {@link WidgetHandle} オブジェクト。見つからなかった場合は、<code>null</code>。 40 */ 41 public WidgetHandle getWidgetHandle(String handleId); 42 43 /** 44 * <code>handleId</code> で指定された ID を持つ {@link WidgetHandle} 45 * が存在するかどうかを調べます。 46 * 47 * @param handleId 48 * ハンドルID 49 * @return 存在すれば <code>true</code>。存在しなければ <code>false</code> 50 */ 51 public boolean hasWidgetHandle(String handleId); 52 53 /** 54 * {@link WidgetHandle} を登録します。<br /> 55 * 56 * @param handle 57 * {@link WidgetHandle} オブジェクト 58 */ 59 public void putWidgetHandle(WidgetHandle handle); 60 61 /** 62 * 指定したクラスのオブジェクトを持つ {@link WidgetHandle} のリストを返します。<br /> 63 * 64 * @param clazz 65 * クラス 66 * @return {@link WidgetHandle} のリスト 67 */ 68 public List<WidgetHandle> getWidgetHandles(Class<?> clazz); 69 }