History

My first initial commit with all of mine experimental changes.

Dmitry Kabak (userdima committed 13 years ago

Commit d37b88d1 parent 3f5b46618352 files · +2598093 −-8690Browse files

Showing the changes to java/pkg/com/sun/rowset/JdbcRowSetResourceBundle.java (1 of 18352 files). Show all

Unified · Split

java/pkg/com/sun/rowset/JdbcRowSetResourceBundle.java+156−0
@@ -0,0 +1,156 @@
1/*
2 * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26package com.sun.rowset;
27
28import java.io.*;
29import java.util.*;
30
31/**
32 * This class is used to help in localization of resources,
33 * especially the exception strings.
34 *
35 * @author Amit Handa
36 */
37
38public class JdbcRowSetResourceBundle implements Serializable {
39
40 /**
41 * This <code>String</code> variable stores the location
42 * of the resource bundle location.
43 */
44 private static String fileName;
45
46 /**
47 * This variable will hold the <code>PropertyResourceBundle</code>
48 * of the text to be internationalized.
49 */
50 private transient PropertyResourceBundle propResBundle;
51
52 /**
53 * The constructor initializes to this object
54 *
55 */
56 private static volatile JdbcRowSetResourceBundle jpResBundle;
57
58 /**
59 * The variable which will represent the properties
60 * the suffix or extension of the resource bundle.
61 **/
62 private static final String PROPERTIES = "properties";
63
64 /**
65 * The variable to represent underscore
66 **/
67 private static final String UNDERSCORE = "_";
68
69 /**
70 * The variable which will represent dot
71 **/
72 private static final String DOT = ".";
73
74 /**
75 * The variable which will represent the slash.
76 **/
77 private static final String SLASH = "/";
78
79 /**
80 * The variable where the default resource bundle will
81 * be placed.
82 **/
83 private static final String PATH = "com/sun/rowset/RowSetResourceBundle";
84
85 /**
86 * The constructor which initializes the resource bundle.
87 * Note this is a private constructor and follows Singleton
88 * Design Pattern.
89 *
90 * @throws IOException if unable to load the ResourceBundle
91 * according to locale or the default one.
92 */
93 private JdbcRowSetResourceBundle () throws IOException {
94 // Try to load the resource bundle according
95 // to the locale. Else if no bundle found according
96 // to the locale load the default.
97
98 // In default case the default locale resource bundle
99 // should always be loaded else it
100 // will be difficult to throw appropriate
101 // exception string messages.
102 Locale locale = Locale.getDefault();
103
104 // Load appropriate bundle according to locale
105 propResBundle = (PropertyResourceBundle) ResourceBundle.getBundle(PATH,
106 locale, Thread.currentThread().getContextClassLoader());
107
108 }
109
110 /**
111 * This method is used to get a handle to the
112 * initialized instance of this class. Note that
113 * at any time there is only one instance of this
114 * class initialized which will be returned.
115 *
116 * @throws IOException if unable to find the RowSetResourceBundle.properties
117 */
118 public static JdbcRowSetResourceBundle getJdbcRowSetResourceBundle()
119 throws IOException {
120
121 if(jpResBundle == null){
122 synchronized(JdbcRowSetResourceBundle.class) {
123 if(jpResBundle == null){
124 jpResBundle = new JdbcRowSetResourceBundle();
125 } //end if
126 } //end synchronized block
127 } //end if
128 return jpResBundle;
129 }
130
131 /**
132 * This method returns an enumerated handle of the keys
133 * which correspond to values translated to various locales.
134 *
135 * @return an enumeration of keys which have messages tranlated to
136 * corresponding locales.
137 */
138 public Enumeration getKeys() {
139 return propResBundle.getKeys();
140 }
141
142
143 /**
144 * This method takes the key as an argument and
145 * returns the corresponding value reading it
146 * from the Resource Bundle loaded earlier.
147 *
148 * @return value in locale specific language
149 * according to the key passed.
150 */
151 public Object handleGetObject(String key) {
152 return propResBundle.handleGetObject(key);
153 }
154
155 static final long serialVersionUID = 436199386225359954L;
156}