package com.igormaznitsa.ideamindmap.lang.psi;
import com.igormaznitsa.mindmap.model.Extra;
import com.intellij.extapi.psi.ASTWrapperPsiElement;
import com.intellij.lang.ASTNode;
import org.apache.commons.lang.StringEscapeUtils;
import javax.annotation.Nonnull;
public abstract class AbstractExtraData extends ASTWrapperPsiElement implements MMPsiElement {
private final String processedText;
public AbstractExtraData(@Nonnull final ASTNode node) {
super(node);
final String text = node.getText();
final String groupPre = getExtraType().preprocessString(text.substring(5, text.length() - 6));
this.processedText = StringEscapeUtils.unescapeHtml(groupPre);
}
public abstract Extra.ExtraType getExtraType();
@Override @Nonnull public String getName() {
return this.processedText;
}
}