class RadixTreeNode {

    void addChildNode(RadixTreeNode node) {
        if (node == null || node._key == null || node._key.isEmpty()) {
            throw new IllegalArgumentException(_strings.get("errorInEmptyNullKeyInstertion"));
        }
        char c = node._key.charAt(0);
        if (_childNodes == null) {
            _childNodes = new HashMap<Character, RadixTreeNode>();
        }
        RadixTreeNode oldNode = _childNodes.put(c, node);
        if (oldNode != null) {
            _logger.log(Level.WARNING, SLogger.CHILD_NODE_EXISTS, 
            		new Object[] {this.toString(), oldNode.toString(), node.toString()});
            oldNode._parentNode = null;
        }
        node._parentNode = this;
    }

      RadixTreeNode(String key, String value);

}