view software/eXist/mpdl-modules/src/de/mpg/mpiwg/berlin/mpdl/lt/doc/regularization/Regularization.java @ 0:408254cf2f1d

Erstellung
author Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
date Wed, 24 Nov 2010 17:24:23 +0100
parents
children
line wrap: on
line source

package de.mpg.mpiwg.berlin.mpdl.lt.doc.regularization;

import de.mpg.mpiwg.berlin.mpdl.exception.ApplicationException;
import de.mpg.mpiwg.berlin.mpdl.util.StringUtilEscapeChars;
import de.mpg.mpiwg.berlin.mpdl.util.XmlUtil;

public class Regularization {
  private String language;
  private String orig;
  private String norm;
  private String source;
  private int sourcePosition;

  public Regularization(String language, String orig, String norm, String source) {
    this.language = language;
    this.orig = orig;
    this.norm = norm;
    this.source = source;
  }

  public static Regularization getInstance(String xmlStr) throws ApplicationException {
    XmlUtil xmlUtil = XmlUtil.getInstance();
    String language = xmlUtil.evaluateToString(xmlStr, "//language", null);
    String orig = xmlUtil.evaluateToString(xmlStr, "//orig", null);
    String norm = xmlUtil.evaluateToString(xmlStr, "//norm", null);
    String source = xmlUtil.evaluateToString(xmlStr, "//source", null);
    String sourcePosStr = xmlUtil.evaluateToString(xmlStr, "//source/@position", null);
    int sourcePos = new Integer(sourcePosStr);
    Regularization reg = new Regularization(language, orig, norm, source);
    reg.setSourcePosition(sourcePos);
    return reg;
  }
  
  public String getLanguage() {
    return language;
  }

  public void setLanguage(String language) {
    this.language = language;
  }

  public String getOrig() {
    return orig;
  }

  public void setOrig(String orig) {
    this.orig = orig;
  }

  public String getNorm() {
    return norm;
  }

  public void setNorm(String norm) {
    this.norm = norm;
  }

  public String getSource() {
    return source;
  }

  public void setSource(String source) {
    this.source = source;
  }

  public int getSourcePosition() {
    return sourcePosition;
  }

  public void setSourcePosition(int sourcePosition) {
    this.sourcePosition = sourcePosition;
  }

  public String getXmlString() {
    String xmlString = "<reg>\n";
    if (language != null)
      xmlString += "  <language>" + language + "</language>\n";
    if (orig != null)
      xmlString += "  <orig>" + StringUtilEscapeChars.deresolveXmlEntities(orig) + "</orig>\n";
    if (norm != null)
      xmlString += "  <norm>" + StringUtilEscapeChars.deresolveXmlEntities(norm) + "</norm>\n";
    if (source != null)
      xmlString += "  <source position=\"" + sourcePosition + "\">" + StringUtilEscapeChars.deresolveXmlEntities(source) + "</source>\n";
    xmlString += "</reg>\n";
    return xmlString;
  }

  
}