code: @SuppressWarnings("unchecked")
  	private void processKey(String key) {
  		StringTokenizer tk = new StringTokenizer(key, ".");
  		Map<String, Object> currentMap = this.keyMap;
  		while (tk.hasMoreTokens()) {
  			String token = tk.nextToken();
  			if (!currentMap.containsKey(token))
  				currentMap.put(token, new HashMap<String, Object>());
  			currentMap = (Map<String, Object>) currentMap.get(token);
  		}
  	}
docs: Creates a tree map structure from the message bundle. Each messages key
  is split by the separator (.) and used as a key in the map, for whose
  value a new map is created, and so forth until all keys form the tree
  structure. For instance, com.example.message=foo
  com.example.somethingelse=baz results in [com [example
  [message,somethingelse] ] ]
  
  @param key
  A key in the message bundle.