*  @param links update the links tables 
     *  @throws IOException if a network error occurs
     *  @since 0.17
     */
    public void purge(boolean links, String... titles) throws IOException
    {
        // TODO: allow batches of more than 50
        StringBuilder url = new StringBuilder(100);
        StringBuilder log = new StringBuilder("Successfully purged { \""); // log statement
        if (links)
            url.append("&forcelinkupdate");
        url.append("&titles=");
        for (int i = 0; i < titles.length; i++)
        {
            url.append(URLEncoder.encode(titles[i], "UTF-8"));
            log.append(titles[i]);
            if (i != titles.length - 1)
            {
                url.append("%7C");
                log.append("\", ");
            }
            else
                log.append("\" }");
        }
        if (user == null)
            post(apiUrl + "action=purge", url.toString(), "purge");
        else
            fetch(apiUrl + "action=purge" + url.toString(), "purge");
        log(Level.INFO, log.toString(), "purge"); // done, log
    }