2 * Copyright 2000-2009 JetBrains s.r.o.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package com
.intellij
.idea
;
18 import com
.intellij
.CommonBundle
;
19 import org
.jetbrains
.annotations
.NonNls
;
20 import org
.jetbrains
.annotations
.PropertyKey
;
22 import java
.lang
.ref
.Reference
;
23 import java
.lang
.ref
.SoftReference
;
24 import java
.util
.ResourceBundle
;
27 * @author Eugene Zhuravlev
30 public class ActionsBundle
{
31 private static Reference
<ResourceBundle
> ourBundle
;
33 @NonNls private static final String IDEA_ACTIONS_BUNDLE
= "messages.ActionsBundle";
35 @SuppressWarnings({"HardCodedStringLiteral", "UnresolvedPropertyKey"})
36 public static String
actionText(@NonNls String actionId
) {
37 return message("action." + actionId
+ ".text");
40 @SuppressWarnings({"HardCodedStringLiteral", "UnresolvedPropertyKey"})
41 public static String
groupText(@NonNls String actionId
) {
42 return message("group." + actionId
+ ".text");
45 @SuppressWarnings({"HardCodedStringLiteral", "UnresolvedPropertyKey"})
46 public static String
actionDescription(@NonNls String actionId
) {
47 return message("action." + actionId
+ ".description");
50 public static String
message(@PropertyKey(resourceBundle
= IDEA_ACTIONS_BUNDLE
)String key
, Object
... params
) {
51 return CommonBundle
.message(getBundle(), key
, params
);
54 private static ResourceBundle
getBundle() {
55 ResourceBundle bundle
= null;
56 if (ourBundle
!= null) bundle
= ourBundle
.get();
58 bundle
= ResourceBundle
.getBundle(IDEA_ACTIONS_BUNDLE
);
59 ourBundle
= new SoftReference
<ResourceBundle
>(bundle
);