ShareNode[] shareNodes = (ShareNode[]) children.values().toArray(new ShareNode[children.size()]); return sort(shareNodes);
if (sortedChildren==null){ ShareNode[] shareNodes = (ShareNode[]) children.values().toArray(new ShareNode[children.size()]); sortedChildren = sort(shareNodes); } return sortedChildren;
    protected Object[] getChildren() {        ShareNode[] shareNodes = (ShareNode[]) children.values().toArray(new ShareNode[children.size()]);        return sort(shareNodes);    }