View Javadoc
1   /*
2    *   Licensed to the Apache Software Foundation (ASF) under one
3    *   or more contributor license agreements.  See the NOTICE file
4    *   distributed with this work for additional information
5    *   regarding copyright ownership.  The ASF licenses this file
6    *   to you under the Apache License, Version 2.0 (the
7    *   "License"); you may not use this file except in compliance
8    *   with the License.  You may obtain a copy of the License at
9    *
10   *     http://www.apache.org/licenses/LICENSE-2.0
11   *
12   *   Unless required by applicable law or agreed to in writing,
13   *   software distributed under the License is distributed on an
14   *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   *   KIND, either express or implied.  See the License for the
16   *   specific language governing permissions and limitations
17   *   under the License.
18   *
19   */
20  
21  package org.apache.directory.server.i18n;
22  
23  
24  import java.text.MessageFormat;
25  import java.util.Locale;
26  import java.util.MissingResourceException;
27  import java.util.ResourceBundle;
28  
29  
30  /**
31   * Provides i18n handling of error codes.
32   * About formatting see also {@link MessageFormat}
33   *
34   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
35   */
36  public enum I18n
37  {
38      ERR_1("ERR_1"),
39      ERR_2("ERR_2"),
40      ERR_3("ERR_3"),
41      ERR_4("ERR_4"),
42      ERR_5("ERR_5"),
43      ERR_6("ERR_6"),
44      ERR_7("ERR_7"),
45      ERR_8("ERR_8"),
46      ERR_9("ERR_9"),
47      ERR_10("ERR_10"),
48      ERR_11("ERR_11"),
49      ERR_12("ERR_12"),
50      ERR_13("ERR_13"),
51      ERR_14("ERR_14"),
52      ERR_15("ERR_15"),
53      ERR_16("ERR_16"),
54      ERR_17("ERR_17"),
55      ERR_18("ERR_18"),
56      ERR_19("ERR_19"),
57      ERR_20("ERR_20"),
58      ERR_21("ERR_21"),
59      ERR_22("ERR_22"),
60      ERR_23("ERR_23"),
61      ERR_24("ERR_24"),
62      ERR_25("ERR_25"),
63      ERR_26("ERR_26"),
64      ERR_27("ERR_27"),
65      ERR_28("ERR_28"),
66      ERR_29("ERR_29"),
67      ERR_30("ERR_30"),
68      ERR_31("ERR_31"),
69      ERR_32("ERR_32"),
70      ERR_33("ERR_33"),
71      ERR_34("ERR_34"),
72      ERR_35("ERR_35"),
73      ERR_36("ERR_36"),
74      ERR_37("ERR_37"),
75      ERR_38("ERR_38"),
76      ERR_39("ERR_39"),
77      ERR_40("ERR_40"),
78      ERR_41("ERR_41"),
79      ERR_42("ERR_42"),
80      ERR_43("ERR_43"),
81      ERR_44("ERR_44"),
82      // ERR_45( "ERR_45" ),
83      // ERR_46( "ERR_46" ),
84      ERR_47("ERR_47"),
85      ERR_48("ERR_48"),
86      ERR_49("ERR_49"),
87      ERR_50("ERR_50"),
88      ERR_51("ERR_51"),
89      ERR_52("ERR_52"),
90      ERR_53("ERR_53"),
91      ERR_54("ERR_54"),
92      ERR_55("ERR_55"),
93      ERR_56("ERR_56"),
94      ERR_57("ERR_57"),
95      ERR_58("ERR_58"),
96      ERR_59("ERR_59"),
97      ERR_60("ERR_60"),
98      ERR_61("ERR_61"),
99      ERR_62("ERR_62"),
100     ERR_63("ERR_63"),
101     ERR_64("ERR_64"),
102     ERR_65("ERR_65"),
103     ERR_66("ERR_66"),
104     // ERR_67( "ERR_67" ),
105     ERR_68("ERR_68"),
106     ERR_69("ERR_69"),
107     ERR_70("ERR_70"),
108     ERR_71("ERR_71"),
109     ERR_72("ERR_72"),
110     ERR_73("ERR_73"),
111     ERR_74("ERR_74"),
112     ERR_75("ERR_75"),
113     ERR_76("ERR_76"),
114     ERR_77("ERR_77"),
115     ERR_78("ERR_78"),
116     ERR_79("ERR_79"),
117     ERR_80("ERR_80"),
118     ERR_81("ERR_81"),
119     ERR_82("ERR_82"),
120     ERR_83("ERR_83"),
121     ERR_84("ERR_84"),
122     ERR_85("ERR_85"),
123     ERR_86("ERR_86"),
124     ERR_87("ERR_87"),
125     ERR_88("ERR_88"),
126     ERR_89("ERR_89"),
127     ERR_90("ERR_90"),
128     ERR_91("ERR_91"),
129     // ERR_92( "ERR_92" ),
130     // ERR_93( "ERR_93" ),
131     // ERR_94( "ERR_94" ),
132     // ERR_95( "ERR_95" ),
133     // ERR_96( "ERR_96" ),
134     // ERR_97( "ERR_97" ),
135     // ERR_98( "ERR_98" ),
136     // ERR_99( "ERR_99" ),
137     // ERR_100( "ERR_100" ),
138     // ERR_101( "ERR_101" ),
139     // ERR_102( "ERR_102" ),
140     // ERR_103( "ERR_103" ),
141     // ERR_104( "ERR_104" ),
142     // ERR_105( "ERR_105" ),
143     // ERR_106( "ERR_106" ),
144     // ERR_107( "ERR_107" ),
145     // ERR_108( "ERR_108" ),
146     // ERR_109( "ERR_109" ),
147     // ERR_110( "ERR_110" ),
148     // ERR_111( "ERR_111" ),
149     ERR_112_COULD_NOT_CREATE_DIRECTORY("ERR_112_COULD_NOT_CREATE_DIRECTORY"),
150     ERR_113_COULD_NOT_DELETE_FILE_OR_DIRECTORY("ERR_113_COULD_NOT_DELETE_FILE_OR_DIRECTORY"),
151     ERR_114("ERR_114"),
152     ERR_115("ERR_115"),
153     ERR_116("ERR_116"),
154     ERR_117("ERR_117"),
155     ERR_118("ERR_118"),
156     ERR_119("ERR_119"),
157     ERR_120("ERR_120"),
158     ERR_121("ERR_121"),
159     ERR_122("ERR_122"),
160     // ERR_123( "ERR_123" ),
161     ERR_124("ERR_124"),
162     ERR_125("ERR_125"),
163     ERR_126("ERR_126"),
164     ERR_127("ERR_127"),
165     ERR_128("ERR_128"),
166     // ERR_129( "ERR_129" ),
167     // ERR_130( "ERR_130" ),
168     ERR_131("ERR_131"),
169     ERR_132("ERR_132"),
170     ERR_133("ERR_133"),
171     ERR_134("ERR_134"),
172     ERR_135("ERR_135"),
173     ERR_136("ERR_136"),
174     ERR_137("ERR_137"),
175     ERR_138("ERR_138"),
176     ERR_139("ERR_139"),
177     ERR_140("ERR_140"),
178     ERR_141("ERR_141"),
179     ERR_142("ERR_142"),
180     ERR_143("ERR_143"),
181     ERR_144("ERR_144"),
182     ERR_145("ERR_145"),
183     ERR_146("ERR_146"),
184     ERR_147("ERR_147"),
185     ERR_148("ERR_148"),
186     ERR_149("ERR_149"),
187     ERR_150("ERR_150"),
188     ERR_151("ERR_151"),
189     ERR_152("ERR_152"),
190     ERR_153("ERR_153"),
191     ERR_154("ERR_154"),
192     ERR_155("ERR_155"),
193     ERR_156("ERR_156"),
194     ERR_157("ERR_157"),
195     ERR_158("ERR_158"),
196     ERR_159("ERR_159"),
197     ERR_160("ERR_160"),
198     ERR_161("ERR_161"),
199     ERR_162("ERR_162"),
200     ERR_163("ERR_163"),
201     ERR_164("ERR_164"),
202     ERR_165("ERR_165"),
203     ERR_166("ERR_166"),
204     ERR_167("ERR_167"),
205     ERR_168("ERR_168"),
206     ERR_169("ERR_169"),
207     ERR_170("ERR_170"),
208     ERR_171("ERR_171"),
209     ERR_172("ERR_172"),
210     ERR_173("ERR_173"),
211     ERR_174("ERR_174"),
212     ERR_175("ERR_175"),
213     ERR_176("ERR_176"),
214     ERR_177("ERR_177"),
215     ERR_178("ERR_178"),
216     ERR_179("ERR_179"),
217     ERR_180("ERR_180"),
218     ERR_181("ERR_181"),
219     ERR_182("ERR_182"),
220     ERR_183("ERR_183"),
221     ERR_184("ERR_184"),
222     ERR_185("ERR_185"),
223     ERR_186("ERR_186"),
224     ERR_187("ERR_187"),
225     ERR_188("ERR_188"),
226     ERR_189("ERR_189"),
227     ERR_190("ERR_190"),
228     ERR_191("ERR_191"),
229     ERR_192("ERR_192"),
230     ERR_193("ERR_193"),
231     ERR_194("ERR_194"),
232     ERR_195("ERR_195"),
233     ERR_196("ERR_196"),
234     ERR_197("ERR_197"),
235     ERR_198("ERR_198"),
236     ERR_199("ERR_199"),
237     ERR_200("ERR_200"),
238     ERR_201("ERR_201"),
239     ERR_202("ERR_202"),
240     ERR_203("ERR_203"),
241     ERR_204("ERR_204"),
242     ERR_205("ERR_205"),
243     ERR_206("ERR_206"),
244     ERR_207("ERR_207"),
245     ERR_208("ERR_208"),
246     ERR_209("ERR_209"),
247     ERR_210("ERR_210"),
248     ERR_211("ERR_211"),
249     ERR_212("ERR_212"),
250     ERR_213("ERR_213"),
251     ERR_214("ERR_214"),
252     ERR_215_CANNOT_STORE_CLONED_SERVER_ENTRY("ERR_215_CANNOT_STORE_CLONED_SERVER_ENTRY"),
253     ERR_216_ID_FOR_PARENT_NOT_FOUND("ERR_216_ID_FOR_PARENT_NOT_FOUND"),
254     ERR_217("ERR_217"),
255     ERR_218("ERR_218"),
256     ERR_219("ERR_219"),
257     ERR_220("ERR_220"),
258     ERR_221("ERR_221"),
259     ERR_222("ERR_222"),
260     ERR_223("ERR_223"),
261     ERR_224("ERR_224"),
262     ERR_225("ERR_225"),
263     ERR_226("ERR_226"),
264     ERR_227("ERR_227"),
265     ERR_228("ERR_228"),
266     ERR_229("ERR_229"),
267     ERR_230("ERR_230"),
268     ERR_231("ERR_231"),
269     ERR_232("ERR_232"),
270     ERR_233("ERR_233"),
271     ERR_234("ERR_234"),
272     ERR_235("ERR_235"),
273     ERR_236("ERR_236"),
274     ERR_237("ERR_237"),
275     ERR_238("ERR_238"),
276     ERR_239("ERR_239"),
277     ERR_240("ERR_240"),
278     ERR_241_CANNOT_STORE_COLLECTIVE_ATT_IN_ENTRY("ERR_241_CANNOT_STORE_COLLECTIVE_ATT_IN_ENTRY"),
279     ERR_242("ERR_242"),
280     ERR_243("ERR_243"),
281     ERR_244("ERR_244"),
282     ERR_245("ERR_245"),
283     ERR_246("ERR_246"),
284     ERR_247("ERR_247"),
285     ERR_248("ERR_248"),
286     ERR_249("ERR_249"),
287     ERR_250_ENTRY_ALREADY_EXISTS("ERR_250_ENTRY_ALREADY_EXISTS"),
288     ERR_251_PARENT_NOT_FOUND("ERR_251_PARENT_NOT_FOUND"),
289     ERR_252_ALIAS_WITH_CHILD_NOT_ALLOWED("ERR_252_ALIAS_WITH_CHILD_NOT_ALLOWED"),
290     ERR_253("ERR_253"),
291     ERR_254_ADD_EXISTING_VALUE("ERR_254_ADD_EXISTING_VALUE"),
292     ERR_255("ERR_255"),
293     ERR_256_NO_SUCH_OBJECT("ERR_256_NO_SUCH_OBJECT"),
294     ERR_257_COLLECTIVE_SUBENTRY_WITHOUT_COLLECTIVE_AT("ERR_257_COLLECTIVE_SUBENTRY_WITHOUT_COLLECTIVE_AT"),
295     ERR_258("ERR_258"),
296     ERR_259("ERR_259"),
297     ERR_260("ERR_260"),
298     ERR_261("ERR_261"),
299     ERR_262("ERR_262"),
300     ERR_263("ERR_263"),
301     ERR_264("ERR_264"),
302     ERR_265("ERR_265"),
303     ERR_266("ERR_266"),
304     ERR_267("ERR_267"),
305     ERR_268("ERR_268"),
306     ERR_269("ERR_269"),
307     ERR_270("ERR_270"),
308     ERR_271("ERR_271"),
309     ERR_272_MODIFY_LEAVES_NO_STRUCTURAL_OBJECT_CLASS("ERR_272_MODIFY_LEAVES_NO_STRUCTURAL_OBJECT_CLASS"),
310     ERR_273("ERR_273"),
311     ERR_274("ERR_274"),
312     ERR_275("ERR_275"),
313     ERR_276("ERR_276"),
314     ERR_277("ERR_277"),
315     ERR_278("ERR_278"),
316     ERR_279("ERR_279"),
317     ERR_280("ERR_280"),
318     ERR_281("ERR_281"),
319     ERR_282("ERR_282"),
320     ERR_283("ERR_283"),
321     ERR_284("ERR_284"),
322     ERR_285("ERR_285"),
323     ERR_286("ERR_286"),
324     ERR_287("ERR_287"),
325     ERR_288("ERR_288"),
326     ERR_289("ERR_289"),
327     ERR_290("ERR_290"),
328     ERR_291("ERR_291"),
329     ERR_292("ERR_292"),
330     ERR_293("ERR_293"),
331     ERR_294("ERR_294"),
332     ERR_295("ERR_295"),
333     ERR_296("ERR_296"),
334     ERR_297("ERR_297"),
335     // ERR_298( "ERR_298" ),
336     // ERR_299( "ERR_299" ),
337     // ERR_300( "ERR_300" ),
338     ERR_301("ERR_301"),
339     ERR_302("ERR_302"),
340     ERR_303("ERR_303"),
341     ERR_304("ERR_304"),
342     ERR_305("ERR_305"),
343     ERR_306("ERR_306"),
344     ERR_307("ERR_307"),
345     ERR_308("ERR_308"),
346     ERR_309("ERR_309"),
347     ERR_310("ERR_310"),
348     ERR_311("ERR_311"),
349     ERR_312("ERR_312"),
350     ERR_313("ERR_313"),
351     ERR_314("ERR_314"),
352     ERR_315("ERR_315"),
353     ERR_316("ERR_316"),
354     ERR_317("ERR_317"),
355     // ERR_318( "ERR_318" ),
356     ERR_319("ERR_319"),
357     ERR_320("ERR_320"),
358     ERR_321("ERR_321"),
359     ERR_322("ERR_322"),
360     ERR_323("ERR_323"),
361     ERR_324("ERR_324"),
362     ERR_325("ERR_325"),
363     ERR_326_NEW_SUPERIROR_CANNOT_BE_NULL("ERR_326_NEW_SUPERIROR_CANNOT_BE_NULL"),
364     ERR_327_MOVE_AND_RENAME_OPERATION("ERR_327_MOVE_AND_RENAME_OPERATION"),
365     ERR_328("ERR_328"),
366     ERR_329("ERR_329"),
367     ERR_330("ERR_330"),
368     ERR_331("ERR_331"),
369     ERR_332("ERR_332"),
370     ERR_333("ERR_333"),
371     // ERR_334( "ERR_334" ),
372     ERR_335("ERR_335"),
373     ERR_336("ERR_336"),
374     ERR_337("ERR_337"),
375     ERR_338("ERR_338"),
376     ERR_339("ERR_339"),
377     // ERR_340( "ERR_340" ),
378     ERR_341("ERR_341"),
379     ERR_342("ERR_342"),
380     ERR_343("ERR_343"),
381     // ERR_344( "ERR_344" ),
382     ERR_345("ERR_345"),
383     ERR_346("ERR_346"),
384     ERR_347("ERR_347"),
385     ERR_348("ERR_348"),
386     ERR_349("ERR_349"),
387     ERR_350("ERR_350"),
388     ERR_351("ERR_351"),
389     ERR_352("ERR_352"),
390     ERR_353("ERR_353"),
391     ERR_354("ERR_354"),
392     ERR_355("ERR_355"),
393     // ERR_356( "ERR_356" ),
394     ERR_357("ERR_357"),
395     ERR_358("ERR_358"),
396     ERR_359("ERR_359"),
397     ERR_360("ERR_360"),
398     ERR_361("ERR_361"),
399     ERR_362("ERR_362"),
400     ERR_363("ERR_363"),
401     ERR_364("ERR_364"),
402     ERR_365("ERR_365"),
403     ERR_366("ERR_366"),
404     ERR_367("ERR_367"),
405     ERR_368("ERR_368"),
406     ERR_369("ERR_369"),
407     ERR_370("ERR_370"),
408     ERR_371("ERR_371"),
409     ERR_372("ERR_372"),
410     ERR_373("ERR_373"),
411     ERR_374("ERR_374"),
412     ERR_375("ERR_375"),
413     ERR_376("ERR_376"),
414     ERR_377("ERR_377"),
415     ERR_378("ERR_378"),
416     ERR_379("ERR_379"),
417     ERR_380("ERR_380"),
418     ERR_381("ERR_381"),
419     ERR_382("ERR_382"),
420     ERR_383("ERR_383"),
421     ERR_384("ERR_384"),
422     ERR_385("ERR_385"),
423     ERR_386("ERR_386"),
424     ERR_387("ERR_387"),
425     // ERR_388( "ERR_388" ),
426     ERR_389("ERR_389"),
427     ERR_390("ERR_390"),
428     ERR_391("ERR_391"),
429     // ERR_392( "ERR_392" ),
430     ERR_393("ERR_393"),
431     // ERR_394( "ERR_394" ),
432     // ERR_395( "ERR_395" ),
433     ERR_396("ERR_396"),
434     ERR_397("ERR_397"),
435     // ERR_398( "ERR_398" ),
436     ERR_399("ERR_399"),
437     ERR_400("ERR_400"),
438     ERR_401("ERR_401"),
439     ERR_402("ERR_402"),
440     ERR_403("ERR_403"),
441     // ERR_404( "ERR_404" ),
442     ERR_405("ERR_405"),
443     ERR_406("ERR_406"),
444     ERR_407("ERR_407"),
445     ERR_408("ERR_408"),
446     ERR_409("ERR_409"),
447     ERR_410("ERR_410"),
448     ERR_411("ERR_411"),
449     ERR_412("ERR_412"),
450     ERR_413("ERR_413"),
451     ERR_414("ERR_414"),
452     ERR_415("ERR_415"),
453     ERR_416("ERR_416"),
454     ERR_417("ERR_417"),
455     ERR_418("ERR_418"),
456     ERR_419("ERR_419"),
457     ERR_420("ERR_420"),
458     ERR_421("ERR_421"),
459     ERR_422("ERR_422"),
460     ERR_423("ERR_423"),
461     ERR_424("ERR_424"),
462     ERR_425("ERR_425"),
463     ERR_426("ERR_426"),
464     ERR_427("ERR_427"),
465     ERR_428("ERR_428"),
466     ERR_429("ERR_429"),
467     ERR_430("ERR_430"),
468     ERR_431("ERR_431"),
469     ERR_432("ERR_432"),
470     ERR_433("ERR_433"),
471     ERR_434("ERR_434"),
472     ERR_435("ERR_435"),
473     ERR_436("ERR_436"),
474     ERR_437("ERR_437"),
475     ERR_438("ERR_438"),
476     ERR_439("ERR_439"),
477     ERR_440("ERR_440"),
478     ERR_441("ERR_441"),
479     // ERR_442( "ERR_442" ),
480     ERR_443("ERR_443"),
481     ERR_444("ERR_444"),
482     ERR_445("ERR_445"),
483     ERR_446("ERR_446"),
484     ERR_447("ERR_447"),
485     ERR_448("ERR_448"),
486     ERR_449("ERR_449"),
487     ERR_450("ERR_450"),
488     ERR_451("ERR_451"),
489     ERR_452("ERR_452"),
490     ERR_453("ERR_453"),
491     ERR_454("ERR_454"),
492     ERR_455("ERR_455"),
493     ERR_456("ERR_456"),
494     // ERR_457( "ERR_457" ),
495     // ERR_458( "ERR_458" ),
496     // ERR_459( "ERR_459" ),
497     // ERR_460( "ERR_460" ),
498     // ERR_461( "ERR_461" ),
499     // ERR_462( "ERR_462" ),
500     // ERR_463( "ERR_463" ),
501     ERR_464("ERR_464"),
502     ERR_465("ERR_465"),
503     ERR_466("ERR_466"),
504     ERR_467("ERR_467"),
505     ERR_468("ERR_468"),
506     // ERR_469( "ERR_469" ),
507     // ERR_470( "ERR_470" ),
508     // ERR_471( "ERR_471" ),
509     ERR_472("ERR_472"),
510     ERR_473("ERR_473"),
511     ERR_474("ERR_474"),
512     ERR_475("ERR_475"),
513     ERR_476("ERR_476"),
514     ERR_477("ERR_477"),
515     ERR_478("ERR_478"),
516     ERR_479("ERR_479"),
517     ERR_480("ERR_480"),
518     ERR_481("ERR_481"),
519     ERR_482("ERR_482"),
520     ERR_483("ERR_483"),
521     ERR_484("ERR_484"),
522     ERR_485("ERR_485"),
523     // ERR_486( "ERR_486" ),
524     ERR_487("ERR_487"),
525     // ERR_488( "ERR_488" ),
526     ERR_489("ERR_489"),
527     ERR_490("ERR_490"),
528     ERR_491("ERR_491"),
529     ERR_492("ERR_492"),
530     ERR_493("ERR_493"),
531     ERR_494("ERR_494"),
532     ERR_495("ERR_495"),
533     // ERR_496( "ERR_496" ),
534     ERR_497("ERR_497"),
535     ERR_498("ERR_498"),
536     ERR_499("ERR_499"),
537     ERR_500("ERR_500"),
538     ERR_501("ERR_501"),
539     // ERR_502( "ERR_502" ),
540     ERR_503("ERR_503"),
541     ERR_504("ERR_504"),
542     ERR_505("ERR_505"),
543     ERR_506("ERR_506"),
544     ERR_507("ERR_507"),
545     ERR_508("ERR_508"),
546     ERR_509("ERR_509"),
547     ERR_510("ERR_510"),
548     ERR_511("ERR_511"),
549     ERR_512("ERR_512"),
550     ERR_513("ERR_513"),
551     ERR_514("ERR_514"),
552     ERR_515("ERR_515"),
553     ERR_516("ERR_516"),
554     ERR_517("ERR_517"),
555     ERR_518("ERR_518"),
556     ERR_519("ERR_519"),
557     // ERR_520("ERR_520"),
558     // ERR_521("ERR_521"),
559     ERR_522("ERR_522"),
560     ERR_523("ERR_523"),
561     ERR_524("ERR_524"),
562     ERR_525("ERR_525"),
563     ERR_526("ERR_526"),
564     ERR_527("ERR_527"),
565     ERR_528("ERR_528"),
566     ERR_529("ERR_529"),
567     // ERR_530( "ERR_530" ),
568     ERR_531("ERR_531"),
569     ERR_532("ERR_532"),
570     ERR_533("ERR_533"),
571     ERR_534("ERR_534"),
572     ERR_535("ERR_535"),
573     ERR_536("ERR_536"),
574     ERR_537("ERR_537"),
575     ERR_538("ERR_538"),
576     ERR_539_BAD_BLOCK_ID("ERR_539_BAD_BLOCK_ID"),
577     ERR_540("ERR_540"),
578     ERR_541("ERR_541"),
579     ERR_542("ERR_542"),
580     ERR_543("ERR_543"),
581     ERR_544("ERR_544"),
582     ERR_545("ERR_545"),
583     ERR_546("ERR_546"),
584     ERR_547("ERR_547"),
585     ERR_548("ERR_548"),
586     ERR_549("ERR_549"),
587     ERR_550("ERR_550"),
588     ERR_551("ERR_551"),
589     ERR_552("ERR_552"),
590     ERR_553("ERR_553"),
591     ERR_554("ERR_554"),
592     ERR_555("ERR_555"),
593     ERR_556("ERR_556"),
594     ERR_557("ERR_557"),
595     ERR_558("ERR_558"),
596     ERR_559("ERR_559"),
597     ERR_560("ERR_560"),
598     ERR_561("ERR_561"),
599     ERR_562("ERR_562"),
600     ERR_563("ERR_563"),
601     ERR_564("ERR_564"),
602     ERR_565("ERR_565"),
603     ERR_566("ERR_566"),
604     ERR_567("ERR_567"),
605     ERR_568("ERR_568"),
606     ERR_569("ERR_569"),
607     ERR_570("ERR_570"),
608     ERR_571("ERR_571"),
609     ERR_572("ERR_572"),
610     ERR_573("ERR_573"),
611     ERR_574("ERR_574"),
612     ERR_575("ERR_575"),
613     ERR_576("ERR_576"),
614     ERR_577("ERR_577"),
615     // ERR_578( "ERR_578" ),
616     // ERR_579( "ERR_579" ),
617     // ERR_580( "ERR_580" ),
618     ERR_581("ERR_581"),
619     // ERR_582( "ERR_582" ),
620     // ERR_583( "ERR_583" ),
621     // ERR_584( "ERR_584" ),
622     // ERR_585( "ERR_585" ),
623     // ERR_586( "ERR_586" ),
624     // ERR_587( "ERR_587" ),
625     // ERR_588( "ERR_588" ),
626     // ERR_589( "ERR_589" ),
627     // ERR_590( "ERR_590" ),
628     ERR_591("ERR_591"),
629     ERR_592("ERR_592"),
630     ERR_593("ERR_593"),
631     ERR_594("ERR_594"),
632     // ERR_595( "ERR_595" ),
633     ERR_596("ERR_596"),
634     ERR_597("ERR_597"),
635     // ERR_598( "ERR_598" ),
636     ERR_599("ERR_599"),
637     ERR_600("ERR_600"),
638     ERR_601("ERR_601"),
639     ERR_602("ERR_602"),
640     ERR_603("ERR_603"),
641     ERR_604("ERR_604"),
642     ERR_605("ERR_605"),
643     ERR_606("ERR_606"),
644     ERR_607("ERR_607"),
645     ERR_608("ERR_608"),
646     ERR_609("ERR_609"),
647     ERR_610("ERR_610"),
648     ERR_611("ERR_611"),
649     ERR_612("ERR_612"),
650     ERR_613("ERR_613"),
651     ERR_614("ERR_614"),
652     ERR_615("ERR_615"),
653     ERR_616("ERR_616"),
654     ERR_617("ERR_617"),
655     ERR_618("ERR_618"),
656     ERR_619("ERR_619"),
657     // ERR_620( "ERR_620" ),
658     // ERR_621( "ERR_621" ),
659     ERR_622("ERR_622"),
660     ERR_623("ERR_623"),
661     ERR_624("ERR_624"),
662     ERR_625("ERR_625"),
663     ERR_626("ERR_626"),
664     ERR_627("ERR_627"),
665     ERR_628("ERR_628"),
666     ERR_629("ERR_629"),
667     ERR_630("ERR_630"),
668     ERR_631("ERR_631"),
669     ERR_632("ERR_632"),
670     ERR_633("ERR_633"),
671     ERR_634("ERR_634"),
672     ERR_635("ERR_635"),
673     ERR_636("ERR_636"),
674     ERR_637("ERR_637"),
675     ERR_638("ERR_638"),
676     ERR_639("ERR_639"),
677     ERR_640("ERR_640"),
678     ERR_641("ERR_641"),
679     ERR_642("ERR_642"),
680     // ERR_643( "ERR_643" ),
681     // ERR_644( "ERR_644" ),
682     // ERR_645( "ERR_645" ),
683     ERR_646("ERR_646"),
684     ERR_647("ERR_647"),
685     ERR_648("ERR_648"),
686     ERR_649("ERR_649"),
687     ERR_650("ERR_650"),
688     ERR_651("ERR_651"),
689     ERR_652("ERR_652"),
690     ERR_653("ERR_653"),
691     ERR_654("ERR_654"),
692     ERR_655("ERR_655"),
693     ERR_656("ERR_656"),
694     ERR_657("ERR_657"),
695     ERR_658("ERR_658"),
696     ERR_659("ERR_659"),
697     ERR_660("ERR_660"),
698     ERR_661("ERR_661"),
699     ERR_662("ERR_662"),
700     ERR_663("ERR_663"),
701     ERR_664("ERR_664"),
702     // ERR_665( "ERR_665" ),
703     ERR_666("ERR_666"),
704     ERR_667("ERR_667"),
705     ERR_668("ERR_668"),
706     ERR_669("ERR_669"),
707     ERR_670("ERR_670"),
708     ERR_671("ERR_671"),
709     ERR_672("ERR_672"),
710     // ERR_673( "ERR_673" ),
711     ERR_674("ERR_674"),
712     ERR_675("ERR_675"),
713     ERR_676("ERR_676"),
714     ERR_677("ERR_677"),
715     ERR_678("ERR_678"),
716     ERR_679("ERR_679"),
717     ERR_680("ERR_680"),
718     ERR_681("ERR_681"),
719     ERR_682("ERR_682"),
720     ERR_683("ERR_683"),
721     ERR_684("ERR_684"),
722     ERR_685("ERR_685"),
723     ERR_686("ERR_686"),
724     ERR_687("ERR_687"),
725     // ERR_688( "ERR_688" ),
726     ERR_689("ERR_689"),
727     ERR_690("ERR_690"),
728     ERR_691("ERR_691"),
729     ERR_692("ERR_692"),
730     // ERR_693( "ERR_693" ),
731     ERR_694("ERR_694"),
732     ERR_695("ERR_695"),
733     // ERR_696( "ERR_696" ),
734     ERR_697("ERR_697"),
735     ERR_698("ERR_698"),
736     ERR_699("ERR_699"),
737     ERR_700("ERR_700"),
738     ERR_701("ERR_701"),
739     ERR_702("ERR_702"),
740     ERR_703("ERR_703"),
741     ERR_704("ERR_704"),
742     ERR_705("ERR_705"),
743     ERR_706("ERR_706"),
744     ERR_707("ERR_707"),
745     ERR_708("ERR_708"),
746     ERR_709("ERR_709"),
747     // ERR_710( "ERR_710" ),
748     ERR_711("ERR_711"),
749     ERR_712("ERR_712"),
750     ERR_713("ERR_713"),
751     ERR_714("ERR_714"),
752     ERR_715("ERR_715"),
753     ERR_716("ERR_716"),
754     ERR_717("ERR_717"),
755     ERR_718("ERR_718"),
756     ERR_719("ERR_719"),
757     ERR_720("ERR_720"),
758     ERR_721("ERR_721"),
759     ERR_722("ERR_722"),
760     ERR_723("ERR_723"),
761     ERR_724("ERR_724"),
762     ERR_725("ERR_725"),
763     ERR_726_FILE_UNDELETABLE("ERR_726_FILE_UNDELETABLE"),
764     ERR_727("ERR_727"),
765     ERR_728("ERR_728"),
766     ERR_729("ERR_729"),
767     ERR_730("ERR_730"),
768     ERR_731("ERR_731"),
769     ERR_732("ERR_732"),
770     ERR_733("ERR_733"),
771     ERR_734_CANNOT_ENCODE_KRBERROR("ERR_734_CANNOT_ENCODE_KRBERROR"),
772     ERR_735_CANNOT_ENCODE_KRBSAFEBODY("ERR_735_CANNOT_ENCODE_KRBSAFEBODY"),
773     ERR_736_CANNOT_ENCODE_KRBSAFE("ERR_736_CANNOT_ENCODE_KRBSAFE"),
774     ERR_737_CANNOT_ENCODE_ENC_KRB_PRIV_PART("ERR_737_CANNOT_ENCODE_ENC_KRB_PRIV_PART"),
775     ERR_738_CANNOT_ENCODE_KRB_PRIV("ERR_738_CANNOT_ENCODE_KRB_PRIV"),
776     ERR_739_CANNOT_ENCODE_KRB_CRED_INFO("ERR_739_CANNOT_ENCODE_KRB_CRED_INFO"),
777     ERR_740_CANNOT_ENCODE_ENC_KRB_CRED_PART("ERR_740_CANNOT_ENCODE_ENC_KRB_CRED_PART"),
778     ERR_741_CANNOT_ENCODE_KRB_CRED("ERR_741_CANNOT_ENCODE_KRB_CRED"),
779     ERR_742_CANNOT_ENCODE_ENC_TICKET_PART("ERR_742_CANNOT_ENCODE_ENC_TICKET_PART"),
780     ERR_743_CANNOT_ENCODE_TYPED_DATA("ERR_743_CANNOT_ENCODE_TYPED_DATA"),
781     ERR_744_NULL_PDU_LENGTH("ERR_744_NULL_PDU_LENGTH"),
782     ERR_745_NOT_A_KERBEROS_STRING("ERR_745_NOT_A_KERBEROS_STRING"),
783     ERR_746("ERR_746"),
784     ERR_747("ERR_747"),
785     ERR_748("ERR_748"),
786     ERR_749("ERR_749"),
787     ERR_750("ERR_750");
788 
789     private static final ResourceBundle ERR_BUNDLE = ResourceBundle
790         .getBundle( "org.apache.directory.server.i18n.errors", Locale.ROOT );
791 
792     private static final ResourceBundle MSG_BUNDLE = ResourceBundle
793         .getBundle( "org/apache/directory/server/i18n/messages", Locale.ROOT );
794 
795     /** The error code */
796     private String errorCode;
797 
798 
799     /**
800      * Creates a new instance of I18n.
801      */
802     I18n( String errorCode )
803     {
804         this.errorCode = errorCode;
805     }
806 
807 
808     /**
809      * @return the errorCode
810      */
811     public String getErrorCode()
812     {
813         return errorCode;
814     }
815 
816 
817     /**
818      * 
819      * Translate an error code with argument(s)
820      *
821      * @param err The error code
822      * @param args The argument(s)
823      * @return The translate error code
824      */
825     public static String err( I18n err, Object... args )
826     {
827         try
828         {
829             return err + " "
830                 + new MessageFormat( ERR_BUNDLE.getString( err.getErrorCode() ), Locale.ROOT ).format( args );
831         }
832         catch ( Exception e )
833         {
834             StringBuilder sb = new StringBuilder();
835             boolean comma = false;
836 
837             for ( Object obj : args )
838             {
839                 if ( comma )
840                 {
841                     sb.append( "," );
842                 }
843                 else
844                 {
845                     comma = true;
846                 }
847 
848                 sb.append( obj );
849             }
850 
851             return err + " (" + sb.toString() + ")";
852         }
853     }
854 
855 
856     /**
857      * 
858      * Translate a message with argument(s)
859      *
860      * @param msg The message
861      * @param args The argument(s)
862      * @return The translated message
863      */
864     public static String msg( String msg, Object... args )
865     {
866         try
867         {
868             return new MessageFormat( MSG_BUNDLE.getString( msg ), Locale.ROOT ).format( args );
869         }
870         catch ( MissingResourceException mre )
871         {
872             try
873             {
874                 return new MessageFormat( msg, Locale.ROOT ).format( args );
875             }
876             catch ( Exception e )
877             {
878                 StringBuilder sb = new StringBuilder();
879                 boolean comma = false;
880 
881                 for ( Object obj : args )
882                 {
883                     if ( comma )
884                     {
885                         sb.append( "," );
886                     }
887                     else
888                     {
889                         comma = true;
890                     }
891 
892                     sb.append( obj );
893                 }
894 
895                 return msg + " (" + sb.toString() + ")";
896             }
897         }
898     }
899 }