public void ls() {
        System.out.println(CompositeDemo.g_indent + m_name);
        CompositeDemo.g_indent.append("   ");
        for (Object obj : m_files) {
            // Recover the type of this object
            if (obj instanceof Directory) {
                ((Directory) obj).ls();
            } else {
                ((File) obj).ls();
            }
        }
        CompositeDemo.g_indent.setLength(CompositeDemo.g_indent.length() - 3);
    }