package api.unicharge.component;
 
 
import api.DuoComponent;
import api.unicharge.component_manual.TerminalOrderDetail;
import iapp.services.ServerObject;
import iapp.util.audit.AuditHelper;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.FormParam;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.codehaus.jackson.annotate.JsonPropertyOrder;
import org.codehaus.jackson.map.annotate.JsonSerialize;
 
/**
 * @author CodeGen [Liza Zhydok]
 * @company UnitedThinkers
 * @since 2015/10/05
 */
 
@JsonSerialize(include=NON_NULL)
@XmlType(propOrder={})
@JsonPropertyOrder({})
@XmlAccessorType(XmlAccessType.NONE)
@XmlSeeAlso(TerminalOrderDetail.class)
public abstract class AbstractTerminalOrderDetail extends DuoComponent<> {
 
 
    public AbstractTerminalOrderDetail(){
        super();
        applyDefaults();
    }
 
    public AbstractTerminalOrderDetail(){
        super();
    }
 
 
    private void applyDefaults() {
        if (!isProxyObject()) {
        }
    }
 
    @Override
    public void from() {
        fromInternal();
        super.from();
    }
 
    protected abstract void fromInternal();
    @Override
    public abstract void to();
    @Override
    public abstract void initializeNew();
 
    @Override
    public String toString(){
        StringBuilder sb = new StringBuilder();
        sb.append("terminalOrderDetail: {");
        sb.append('}');
        return sb.toString();
    }
 
 
 
    public void audit(AuditHelper helper, ServerObject object) {
 
    }
 
 
}