1 /*
   2  * CDDL HEADER START
   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License, Version 1.0 only
   6  * (the "License").  You may not use this file except in compliance
   7  * with the License.
   8  *
   9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10  * or http://www.opensolaris.org/os/licensing.
  11  * See the License for the specific language governing permissions
  12  * and limitations under the License.
  13  *
  14  * When distributing Covered Code, include this CDDL HEADER in each
  15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16  * If applicable, add the following below this CDDL HEADER, with the
  17  * fields enclosed by brackets "[]" replaced with your own identifying
  18  * information: Portions Copyright [yyyy] [name of copyright owner]
  19  *
  20  * CDDL HEADER END
  21  */
  22 /*
  23  * ident        "%Z%%M% %I%     %E% SMI"
  24  *
  25  * Copyright (c) 1998-1999 by Sun Microsystems, Inc.
  26  * All rights reserved.
  27  */
  28 package com.sun.dhcpmgr.ui;
  29 
  30 import java.util.*;
  31 
  32 public class HelpIds {
  33     private ResourceBundle bundle;
  34     
  35     public HelpIds(String bundleName) throws MissingResourceException {
  36         bundle = ResourceBundle.getBundle(bundleName);
  37     }
  38         
  39     public String getFilePath(String key) {
  40         try {
  41             /*
  42              * The original version of this code was:
  43              * if (bundle.getLocale().toString().length() == 0) {
  44              * bug 4177489 causes that not to work correctly, so for the moment
  45              * we *require* that each key in a locale contain a relative
  46              * path, otherwise it is assumed we're in the default locale and
  47              * proceed with the default location.
  48              */
  49             String s = bundle.getString(key);
  50             if (s.indexOf('/') == -1) {
  51                 // Not localized, use the default location
  52                 return "/usr/sadm/admin/dhcpmgr/help/" + s;
  53             } else {
  54                 return "/usr/share/lib/locale/com/sun/dhcpmgr/client/help/" + s;
  55             }
  56         } catch (Throwable e) {
  57             e.printStackTrace();
  58             return "";
  59         }
  60     }
  61 }