001    /*
002     * Copyright (c) 2009 The openGion Project.
003     *
004     * Licensed under the Apache License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     *
008     *     http://www.apache.org/licenses/LICENSE-2.0
009     *
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
013     * either express or implied. See the License for the specific language
014     * governing permissions and limitations under the License.
015     */
016    package org.opengion.hayabusa.resource;
017    
018    /**
019     * systemId , lang に対応したラベルãƒ??タを作æ?しますã?
020     *
021     * ラベルãƒ??タはã€??目(CLM)に対して、各種ラベルæƒ??を持ってã�?�¾すã?
022     * ラベルãƒ??タは、名å‰?短)と名前(長)を持ってã�?�¾すã?従来のラベルは、表示名称と
023     * して、ä¸?¨®類しか持ってã�?�¾せんでしたã€?
024     * 名前(長)は、従来の表示名称にあたりますã?これは、ä¸?ˆ¬çš?�ªラベルとして
025     * 使用されますã?名前(短)は、テーブルä¸?¦§のヘッãƒ??の様に、特殊なケースでã€?
026     * 簡略化された名称を使用するときに利用されますã?こã?åˆ?‚Š替えã?、è?動で判断されますã?
027     * 名前(短)に、なにも設定されてã�?�ªã�??合ã?、名å‰?長)がè?動的に使用されますã?で
028     * 初期ãƒ??タ移行時には、そのままã€??常時もãƒ??ブルヘッãƒ??時も同じæ–?­—å?ã�?
029     * 使用されますã?
030     *
031     * ラベルãƒ??タを作æ?する場合ã?、同ä¸?ƒ©ベルで、作æ?区åˆ?KBSAKU)違いの場合ã?ã€?
032     * æœ?‚‚大きな作æ?区åˆ?‚’持つコードを使用しますã?
033     * 作æ?区åˆ?KBSAKU)はã€?:シスãƒ?ƒ 予ç´??1:アプリ設定ã?2:ユーザー設å®?とã�?�†具合に
034     * カスタマイズの度合いに応じて大きな数字を割り当てることで、キーæƒ??を上書き修正
035     * することが可能になりますã?(削除することは出来ませんã€?
036     *
037     * @og.rev 4.0.0.0 (2004/12/31) 新規作æ?
038     * @og.group リソース管ç�?
039     *
040     * @version  4.0
041     * @author   Kazuhiko Hasegawa
042     * @since    JDK5.0,
043     */
044    public interface LabelInterface {
045    
046            /**
047             * ラベルインターフェースのキーを返しますã?
048             *
049             * @return      ラベルインターフェースのキー
050             */
051            String getKey() ;
052    
053            /**
054             * ラベルインターフェースの名前を返しますã?
055             * これはã€?¼¤?¢上ã? LNAME(名前(長))に該当しますã?
056             *
057             * @return      ラベルインターフェースの名前(短)
058             */
059            String getLabel() ;
060    
061            /**
062             * ラベルインターフェースの引数付きメãƒ?‚»ージを返しますã?
063             * メãƒ?‚»ージの引数部åˆ?�«、文字å?配å?を適用して、MessageFormat
064             * で変換した結果を返しますã?(MessageData でのみ有効ですã?)
065             *
066             * @param       vals    メãƒ?‚»ージの引数(æ–?­—å?配å?)
067             *
068             * @return      ラベルインターフェースの引数付きメãƒ?‚»ージ
069             */
070            String getMessage( String[] vals ) ;
071    
072            /**
073             * ラベルインターフェースの名前(短)を返しますã?
074             * 概要説明がなã�??合でかつ?¤?¢上ã?SNAMEが未設定ã?場合ã?ã€?
075             * LNAME が返されますã?SNAMEが設定されてã�?‚‹場合ã?ã€?
076             * ãƒ??ルチップにLNAME が表示されますã?
077             * 概要説明が存在する場合ã?、ツールチップに概要説明が
078             * 表示されますã?
079             *
080             * @return ラベルインターフェースの名前(短)
081             */
082            String getShortLabel() ;
083    
084            /**
085             * ラベルインターフェースの名前(長)を返しますã?
086             * 概要説明が存在する場合ã?、ツールチップに概要説明が
087             * 表示されますã?
088             *
089             * @return ラベルインターフェースの名前(長)
090             * @see #getLongLabel( String )
091             */
092            String getLongLabel() ;
093    
094            /**
095             * ラベルインターフェースの名前(長)を返しますã?
096             * ãƒ??ルチップに表示するタイトル属æ?(概要説æ˜?を置き換えますã?
097             * null の場合ã?、既存ã?getLongLabel()を返しますã?
098             *
099             * @param       title   ãƒ??ルチップに表示するタイトル属æ?
100             *
101             * @return      ラベルインターフェースの名前(長)
102             * @see #getLongLabel()
103             */
104            String getLongLabel( String title ) ;
105    
106            /**
107             * ラベルインターフェースの概要説明を返しますã?
108             * 概要説明が存在する場合ã?、ラベルのãƒ??ルチップに
109             * 概要説明が表示されますã?
110             *
111             * @return      ラベルインターフェースの概要説æ˜?
112             */
113            String getDescription() ;
114    
115            /**
116             * ラベルインターフェースの引数付きメãƒ?‚»ージを返しますã?
117             * 概è¦?対応方æ³?の引数部åˆ?�«、文字å?配å?を適用して、MessageFormat
118             * で変換した結果を返しますã?(MessageData でのみ有効ですã?)
119             *
120             * @og.rev 4.3.7.6 (2009/07/15) 新規作æ?
121             *
122             * @param       vals パラメータ
123             *
124             * @return      ラベルインターフェースの引数付き概è¦?
125             */
126            String getDescription( String[] vals ) ;
127    
128            /**
129             * リソース?¤?¢から作æ?されたかどã�?�‹を返しますã?
130             * 正式な場合ã?、true / リソースになくã?独自に作æ?されたå?合ã?、false になりますã?
131             *
132             * @return      リソース?¤?¢から作æ?されたかどã�?�‹
133             */
134            boolean isOfficial() ;
135    }