package flyweight;
public class TagFactory {
private Map<String, HtmlTag> tags;
public TagFactory() {
tags = new HashMap<String, HtmlTag>();
}
public ATag GetATag() {
if (tags.get("a") == null) {
tags.put("a", new ATag());
}
return (ATag) tags.get("a");
}
public PTag GetPTag() {
if (tags.get("p") == null) {
tags.put("p", new PTag());
}
return (PTag) tags.get("p");
}
public DivTag GetDivTag() {
if (tags.get("div") == null) {
tags.put("div", new DivTag());
}
return (DivTag) tags.get("div");
}
public ImgTag GetImgTag() {
if (tags.get("img") == null) {
tags.put("img", new ImgTag());
}
return (ImgTag) tags.get("img");
}
}