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 20 /** 21 * アプリケーション全体に共通な情報を保持するクラスのためのインターフェースです。<br /> 22 * 23 * @author y-komori 24 */ 25 public interface ApplicationContext { 26 /** 27 * {@link ApplicationContext} が保持する {@link WindowContext} のコレクションを返します。<br /> 28 * {@link WindowContext} を1つも保持しない場合、空のコレクションを返します。 29 * 30 * @return {@link WindowContext} のコレクション 31 */ 32 public Collection<WindowContext> getWindowContexts(); 33 34 /** 35 * <code>windowName</code> で指定された名称を持つ {@link WindowContext} を返します。<br /> 36 * 37 * @param windowName 38 * ウィンドウ名称 39 * @return {@link WindowContext} オブジェクト。見つからなかった場合は <code>null</code>。 40 */ 41 public WindowContext getWindowContext(String windowName); 42 43 /** 44 * {@link ApplicationContext} へ値を設定します。<br /> 45 * 同じ名称の値が既に設定されている場合は、上書きされます。<br /> 46 * 47 * @param name 48 * 名称 49 * @param value 50 * 値 51 */ 52 public void setValue(String name, Object value); 53 54 /** 55 * {@link ApplicationContext} から値を取得します。<br /> 56 * 57 * @param name 58 * 名称 59 * @return 値。見つからない場合は <code>null</code> 60 */ 61 public Object getValue(String name); 62 }