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

org.milyn.edi.unedifact.d06b.common.Damage Maven / Gradle / Ivy

/**
 * This class was generated by Smooks EJC (http://www.smooks.org).
 */
package org.milyn.edi.unedifact.d06b.common;

import java.io.Serializable;    
import org.milyn.smooks.edi.EDIWritable;    
import org.milyn.edi.unedifact.d06b.common.field.TypeOfDamageC821;    
import org.milyn.edi.unedifact.d06b.common.field.DamageAreaC822;    
import org.milyn.edi.unedifact.d06b.common.field.DamageSeverityC825;    
import org.milyn.edi.unedifact.d06b.common.field.ActionC826;    
import java.io.Writer;    
import org.milyn.edisax.model.internal.Delimiters;    
import java.io.IOException;    
import java.io.StringWriter;    
import java.util.List;    
import java.util.ArrayList;    
import org.milyn.edisax.util.EDIUtils;    
import org.milyn.edisax.model.internal.DelimiterType;    

public class Damage implements Serializable, EDIWritable {

    private static final long serialVersionUID = 1L;

    private String damageDetailsCodeQualifier;
    private TypeOfDamageC821 typeOfDamage;
    private DamageAreaC822 damageArea;
    private DamageSeverityC825 damageSeverity;
    private ActionC826 action;

    public void write(Writer writer, Delimiters delimiters) throws IOException {
        
        Writer nodeWriter = new StringWriter();

        List nodeTokens = new ArrayList();

        if(damageDetailsCodeQualifier != null) {
            nodeWriter.write(delimiters.escape(damageDetailsCodeQualifier.toString()));
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(typeOfDamage != null) {
            typeOfDamage.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(damageArea != null) {
            damageArea.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(damageSeverity != null) {
            damageSeverity.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(action != null) {
            action.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeTokens.add(nodeWriter.toString());
        writer.write(EDIUtils.concatAndTruncate(nodeTokens, DelimiterType.FIELD, delimiters));
        writer.write(delimiters.getSegmentDelimiter());
        writer.flush();
    }

    public String getDamageDetailsCodeQualifier() {
        return damageDetailsCodeQualifier;
    }

    public Damage setDamageDetailsCodeQualifier(String damageDetailsCodeQualifier) {
        this.damageDetailsCodeQualifier = damageDetailsCodeQualifier;  return this;
    }

    public TypeOfDamageC821 getTypeOfDamage() {
        return typeOfDamage;
    }

    public Damage setTypeOfDamage(TypeOfDamageC821 typeOfDamage) {
        this.typeOfDamage = typeOfDamage;  return this;
    }

    public DamageAreaC822 getDamageArea() {
        return damageArea;
    }

    public Damage setDamageArea(DamageAreaC822 damageArea) {
        this.damageArea = damageArea;  return this;
    }

    public DamageSeverityC825 getDamageSeverity() {
        return damageSeverity;
    }

    public Damage setDamageSeverity(DamageSeverityC825 damageSeverity) {
        this.damageSeverity = damageSeverity;  return this;
    }

    public ActionC826 getAction() {
        return action;
    }

    public Damage setAction(ActionC826 action) {
        this.action = action;  return this;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy