All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.cloudslang.content.mail.utils.HtmlImageNodeVisitor Maven / Gradle / Ivy

There is a newer version: 0.0.53
Show newest version
package io.cloudslang.content.mail.utils;

import org.htmlparser.Tag;
import org.htmlparser.visitors.NodeVisitor;

import java.util.HashMap;
import java.util.Map;
import java.util.Random;

/**
 * User: bancl
 * Date: 4/15/2015
 */
public class HtmlImageNodeVisitor extends NodeVisitor {
    private Map base64ImagesMap = new HashMap<>();

    public HtmlImageNodeVisitor() {
    }

    public void visitTag(Tag tag) {
        if (tag.getRawTagName().equalsIgnoreCase("img")) {
            String imageValue = tag.getAttribute("src");

            if (imageValue.contains("base64")) {
                String contentId = getContentId();
                tag.setAttribute("src", "cid:" + contentId);
                base64ImagesMap.put(contentId, imageValue.substring(imageValue.indexOf("base64") + 7, imageValue.length()));
            }
        }
    }

    public String getContentId() {
        return new Random(System.currentTimeMillis()).nextInt(100000) + "." + System.currentTimeMillis();
    }

    public Map getBase64Images() {
        return base64ImagesMap;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy