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

org.milyn.edi.unedifact.d99b.common.StructureComponentDefinition Maven / Gradle / Ivy

There is a newer version: 1.7.1.0
Show newest version
/**
 * This class was generated by Smooks EJC (http://www.smooks.org).
 */
package org.milyn.edi.unedifact.d99b.common;

import java.io.Serializable;    
import org.milyn.smooks.edi.EDIWritable;    
import org.milyn.edi.unedifact.d99b.common.field.StructureComponentIdentificationC786;    
import org.milyn.edi.unedifact.d99b.common.field.PartyIdentificationDetailsC082;    
import java.math.BigDecimal;    
import org.milyn.javabean.decoders.DABigDecimalDecoder;    
import org.milyn.edi.unedifact.d99b.common.field.PositionIdentificationC778;    
import org.milyn.edi.unedifact.d99b.common.field.ProductCharacteristicC240;    
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 StructureComponentDefinition implements Serializable, EDIWritable {

    private static final long serialVersionUID = 1L;

    private String structureComponentFunctionCodeQualifier;
    private StructureComponentIdentificationC786 structureComponentIdentification;
    private PartyIdentificationDetailsC082 partyIdentificationDetails;
    private String statusDescriptionCode;
    private BigDecimal configurationLevel;
    private DABigDecimalDecoder configurationLevelEncoder;
    private PositionIdentificationC778 positionIdentification;
    private ProductCharacteristicC240 productCharacteristic;

    public StructureComponentDefinition() {
        
        configurationLevelEncoder = new DABigDecimalDecoder();
    }

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

        List nodeTokens = new ArrayList();

        if(structureComponentFunctionCodeQualifier != null) {
            nodeWriter.write(delimiters.escape(structureComponentFunctionCodeQualifier.toString()));
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(structureComponentIdentification != null) {
            structureComponentIdentification.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(partyIdentificationDetails != null) {
            partyIdentificationDetails.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(statusDescriptionCode != null) {
            nodeWriter.write(delimiters.escape(statusDescriptionCode.toString()));
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(configurationLevel != null) {
            nodeWriter.write(delimiters.escape(configurationLevelEncoder.encode(configurationLevel, delimiters)));
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(positionIdentification != null) {
            positionIdentification.write(nodeWriter, delimiters);
            nodeTokens.add(nodeWriter.toString());
            ((StringWriter)nodeWriter).getBuffer().setLength(0);
        }
        nodeWriter.write(delimiters.getField());
        if(productCharacteristic != null) {
            productCharacteristic.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 getStructureComponentFunctionCodeQualifier() {
        return structureComponentFunctionCodeQualifier;
    }

    public StructureComponentDefinition setStructureComponentFunctionCodeQualifier(String structureComponentFunctionCodeQualifier) {
        this.structureComponentFunctionCodeQualifier = structureComponentFunctionCodeQualifier;  return this;
    }

    public StructureComponentIdentificationC786 getStructureComponentIdentification() {
        return structureComponentIdentification;
    }

    public StructureComponentDefinition setStructureComponentIdentification(StructureComponentIdentificationC786 structureComponentIdentification) {
        this.structureComponentIdentification = structureComponentIdentification;  return this;
    }

    public PartyIdentificationDetailsC082 getPartyIdentificationDetails() {
        return partyIdentificationDetails;
    }

    public StructureComponentDefinition setPartyIdentificationDetails(PartyIdentificationDetailsC082 partyIdentificationDetails) {
        this.partyIdentificationDetails = partyIdentificationDetails;  return this;
    }

    public String getStatusDescriptionCode() {
        return statusDescriptionCode;
    }

    public StructureComponentDefinition setStatusDescriptionCode(String statusDescriptionCode) {
        this.statusDescriptionCode = statusDescriptionCode;  return this;
    }

    public BigDecimal getConfigurationLevel() {
        return configurationLevel;
    }

    public StructureComponentDefinition setConfigurationLevel(BigDecimal configurationLevel) {
        this.configurationLevel = configurationLevel;  return this;
    }

    public PositionIdentificationC778 getPositionIdentification() {
        return positionIdentification;
    }

    public StructureComponentDefinition setPositionIdentification(PositionIdentificationC778 positionIdentification) {
        this.positionIdentification = positionIdentification;  return this;
    }

    public ProductCharacteristicC240 getProductCharacteristic() {
        return productCharacteristic;
    }

    public StructureComponentDefinition setProductCharacteristic(ProductCharacteristicC240 productCharacteristic) {
        this.productCharacteristic = productCharacteristic;  return this;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy