MockResourceBundle.java

  1. /*
  2.  * Copyright (C) 2003-2009 eXo Platform SAS.
  3.  *
  4.  * This program is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU Affero General Public License
  6.  * as published by the Free Software Foundation; either version 3
  7.  * of the License, or (at your option) any later version.
  8.  *
  9.  * This program is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  * GNU General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU General Public License
  15.  * along with this program; if not, see<http://www.gnu.org/licenses/>.
  16.  */
  17. package org.exoplatform.commons.testing.mock;

  18. import java.util.Collections;
  19. import java.util.Enumeration;
  20. import java.util.HashMap;
  21. import java.util.Map;
  22. import java.util.ResourceBundle;

  23. /**
  24.  * @author <a href="mailto:patrice.lamarque@exoplatform.com">Patrice Lamarque</a>
  25.  * @version $Revision$
  26.  */
  27. public class MockResourceBundle extends ResourceBundle {

  28.   protected Map<String, Object> content;

  29.   public MockResourceBundle(Map<String, Object> content)
  30.   {
  31.      this.content = new HashMap<String, Object>(content);
  32.   }

  33.   protected Object handleGetObject(String key)
  34.   {
  35.      if (key == null)
  36.      {
  37.         throw new IllegalArgumentException("null hey is not allowed");
  38.      }
  39.      return content.get(key);
  40.   }

  41.   public Enumeration<String> getKeys()
  42.   {
  43.      return Collections.enumeration(content.keySet());
  44.   }

  45.   public void put(String key, String value) {
  46.     content.put(key, value);
  47.   }

  48. }