public boolean store(List<Server> servers) {
        rootElement = createRootElement();

        for (Server server : servers) {
            rootElement.append( $("<server></server>") );
            Match element = rootElement.find("server").last();

            for (Map.Entry<String, String> entry : server.getAll().entrySet()) {
                Match attr = $("<" + entry.getKey() + " />", entry.getValue() );
                element.append(attr);
            }
        }

        String content = HTML.formatXML(XML_HEADER + rootElement);
        Path path = FileSystems.getDefault().getPath(".", FILENAME);
        try {
            Files.write(path, content.getBytes(), StandardOpenOption.CREATE,
                                                  StandardOpenOption.TRUNCATE_EXISTING);
            return true;
        } catch (IOException ex) {
            return false;
        }
    }