com.webbfontaine.valuewebb.model.template.Template.java Source code

Java tutorial

Introduction

Here is the source code for com.webbfontaine.valuewebb.model.template.Template.java

Source

package com.webbfontaine.valuewebb.model.template;

import org.apache.commons.lang3.StringUtils;
import org.jboss.seam.log.Log;
import org.jboss.seam.log.Logging;

import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Transient;
import java.lang.reflect.Method;

/**
 * Copyrights 2002-2010 Webb Fontaine
 * This software is the proprietary information of Webb Fontaine.
 * Its use is subject to License terms.
 * User: nigiyan
 * Date: Mar 3, 2010
 */

/**
 * Template is a group of elements describing commodity. Can be attached to found hsc / declared hsc
 */
@Embeddable
public class Template {
    private Log logger = Logging.getLog(Template.class);

    private String f1;
    private String f2;
    private String f3;
    private String f4;
    private String f5;
    private String f6;
    private String f7;
    private String f8;
    private String f9;
    private String f10;
    private String f11;
    private String f12;
    private String f13;
    private String f14;
    private String f15;
    private String f16;
    private String f17;
    private String f18;
    private String f19;
    private String f20;
    private String f21;
    private String f22;
    private String f23;
    private String f24;
    private Integer fw1;
    private Integer fw2;
    private Integer fw3;
    private Integer fw4;
    private Integer fw5;
    private Integer fw6;
    private Integer fw7;
    private Integer fw8;
    private Integer fw9;
    private Integer fw10;
    private Integer fw11;
    private Integer fw12;
    private Integer fw13;
    private Integer fw14;
    private Integer fw15;
    private Integer fw16;
    private Integer fw17;
    private Integer fw18;
    private Integer fw19;
    private Integer fw20;
    private Integer fw21;
    private Integer fw22;
    private Integer fw23;
    private Integer fw24;
    private Integer baseWeight;

    private TemplateSpec spec;

    @Transient
    public TemplateSpec getSpec() {
        return spec;
    }

    public void setSpec(TemplateSpec spec) {
        this.spec = spec;
    }

    public String getF1() {
        return f1;
    }

    public void setF1(String f1) {
        this.f1 = f1;
        if (spec != null) {
            fw1 = spec.weightForField(0);
        }
    }

    public String getF2() {
        return f2;
    }

    public void setF2(String f2) {
        this.f2 = f2;
        if (spec != null) {
            fw2 = spec.weightForField(1);
        }
    }

    public String getF3() {
        return f3;
    }

    public void setF3(String f3) {
        this.f3 = f3;
        if (spec != null) {
            fw3 = spec.weightForField(2);
        }
    }

    public String getF4() {
        return f4;
    }

    public void setF4(String f4) {
        this.f4 = f4;
        if (spec != null) {
            fw4 = spec.weightForField(3);
        }
    }

    public String getF5() {
        return f5;
    }

    public void setF5(String f5) {
        this.f5 = f5;
        if (spec != null) {
            fw5 = spec.weightForField(4);
        }
    }

    public String getF6() {
        return f6;
    }

    public void setF6(String f6) {
        this.f6 = f6;
        if (spec != null) {
            fw6 = spec.weightForField(5);
        }
    }

    public String getF7() {
        return f7;
    }

    public void setF7(String f7) {
        this.f7 = f7;
        if (spec != null) {
            fw7 = spec.weightForField(6);
        }
    }

    public String getF8() {
        return f8;
    }

    public void setF8(String f8) {
        this.f8 = f8;
        if (spec != null) {
            fw8 = spec.weightForField(7);
        }
    }

    public String getF9() {
        return f9;
    }

    public void setF9(String f9) {
        this.f9 = f9;
        if (spec != null) {
            fw9 = spec.weightForField(8);
        }
    }

    public String getF10() {
        return f10;
    }

    public void setF10(String f10) {
        this.f10 = f10;
        if (spec != null) {
            fw10 = spec.weightForField(9);
        }
    }

    public String getF11() {
        return f11;
    }

    public void setF11(String f11) {
        this.f11 = f11;
        if (spec != null) {
            fw11 = spec.weightForField(10);
        }
    }

    public String getF12() {
        return f12;
    }

    public void setF12(String f12) {
        this.f12 = f12;
        if (spec != null) {
            fw12 = spec.weightForField(11);
        }
    }

    public String getF13() {
        return f13;
    }

    public void setF13(String f13) {
        this.f13 = f13;
        if (spec != null) {
            fw13 = spec.weightForField(12);
        }
    }

    public String getF14() {
        return f14;
    }

    public void setF14(String f14) {
        this.f14 = f14;
        if (spec != null) {
            fw14 = spec.weightForField(13);
        }
    }

    public String getF15() {
        return f15;
    }

    public void setF15(String f15) {
        this.f15 = f15;
        if (spec != null) {
            fw15 = spec.weightForField(14);
        }
    }

    public String getF16() {
        return f16;
    }

    public void setF16(String f16) {
        this.f16 = f16;
        if (spec != null) {
            fw16 = spec.weightForField(15);
        }
    }

    public String getF17() {
        return f17;
    }

    public void setF17(String f17) {
        this.f17 = f17;
        if (spec != null) {
            fw17 = spec.weightForField(16);
        }
    }

    public String getF18() {
        return f18;
    }

    public void setF18(String f18) {
        this.f18 = f18;
        if (spec != null) {
            fw18 = spec.weightForField(17);
        }
    }

    public String getF19() {
        return f19;
    }

    public void setF19(String f19) {
        this.f19 = f19;
        if (spec != null) {
            fw19 = spec.weightForField(18);
        }
    }

    public String getF20() {
        return f20;
    }

    public void setF20(String f20) {
        this.f20 = f20;
        if (spec != null) {
            fw20 = spec.weightForField(19);
        }
    }

    public String getF21() {
        return f21;
    }

    public void setF21(String f21) {
        this.f21 = f21;
        if (spec != null) {
            fw21 = spec.weightForField(20);
        }
    }

    public String getF22() {
        return f22;
    }

    public void setF22(String f22) {
        this.f22 = f22;
        if (spec != null)
            fw22 = spec.weightForField(21);
    }

    public String getF23() {
        return f23;
    }

    public void setF23(String f23) {
        this.f23 = f23;
        if (spec != null)
            fw23 = spec.weightForField(22);
    }

    public String getF24() {
        return f24;
    }

    public void setF24(String f24) {
        this.f24 = f24;
        if (spec != null) {
            fw24 = spec.weightForField(23);
        }
    }

    public Integer getFw1() {
        return fw1;
    }

    public void setFw1(Integer fw1) {
        this.fw1 = fw1;
    }

    public Integer getFw2() {
        return fw2;
    }

    public void setFw2(Integer fw2) {
        this.fw2 = fw2;
    }

    public Integer getFw3() {
        return fw3;
    }

    public void setFw3(Integer fw3) {
        this.fw3 = fw3;
    }

    public Integer getFw4() {
        return fw4;
    }

    public void setFw4(Integer fw4) {
        this.fw4 = fw4;
    }

    public Integer getFw5() {
        return fw5;
    }

    public void setFw5(Integer fw5) {
        this.fw5 = fw5;
    }

    public Integer getFw6() {
        return fw6;
    }

    public void setFw6(Integer fw6) {
        this.fw6 = fw6;
    }

    public Integer getFw7() {
        return fw7;
    }

    public void setFw7(Integer fw7) {
        this.fw7 = fw7;
    }

    public Integer getFw8() {
        return fw8;
    }

    public void setFw8(Integer fw8) {
        this.fw8 = fw8;
    }

    public Integer getFw9() {
        return fw9;
    }

    public void setFw9(Integer fw9) {
        this.fw9 = fw9;
    }

    public Integer getFw10() {
        return fw10;
    }

    public void setFw10(Integer fw10) {
        this.fw10 = fw10;
    }

    public Integer getFw11() {
        return fw11;
    }

    public void setFw11(Integer fw11) {
        this.fw11 = fw11;
    }

    public Integer getFw12() {
        return fw12;
    }

    public void setFw12(Integer fw12) {
        this.fw12 = fw12;
    }

    public Integer getFw13() {
        return fw13;
    }

    public void setFw13(Integer fw13) {
        this.fw13 = fw13;
    }

    public Integer getFw14() {
        return fw14;
    }

    public void setFw14(Integer fw14) {
        this.fw14 = fw14;
    }

    public Integer getFw15() {
        return fw15;
    }

    public void setFw15(Integer fw15) {
        this.fw15 = fw15;
    }

    public Integer getFw16() {
        return fw16;
    }

    public void setFw16(Integer fw16) {
        this.fw16 = fw16;
    }

    public Integer getFw17() {
        return fw17;
    }

    public void setFw17(Integer fw17) {
        this.fw17 = fw17;
    }

    public Integer getFw18() {
        return fw18;
    }

    public void setFw18(Integer fw18) {
        this.fw18 = fw18;
    }

    public Integer getFw19() {
        return fw19;
    }

    public void setFw19(Integer fw19) {
        this.fw19 = fw19;
    }

    public Integer getFw20() {
        return fw20;
    }

    public void setFw20(Integer fw20) {
        this.fw20 = fw20;
    }

    public Integer getFw21() {
        return fw21;
    }

    public void setFw21(Integer fw21) {
        this.fw21 = fw21;
    }

    public Integer getFw22() {
        return fw22;
    }

    public void setFw22(Integer fw22) {
        this.fw22 = fw22;
    }

    public Integer getFw23() {
        return fw23;
    }

    public void setFw23(Integer fw23) {
        this.fw23 = fw23;
    }

    public Integer getFw24() {
        return fw24;
    }

    public void setFw24(Integer fw24) {
        this.fw24 = fw24;
    }

    @Column(name = "BASE_WGT")
    public Integer getBaseWeight() {
        return baseWeight;
    }

    public void setBaseWeight(Integer baseWeight) {
        this.baseWeight = baseWeight;
    }

    public String generateSpec() {
        if (getSpec() == null) {
            logger.warn(
                    "Attempt to generate specification code for Template which does not have specification defined!");
            return null;
        }

        StringBuffer specCode = new StringBuffer(64);
        try {
            Method[] fws = Template.class.getMethods();
            for (Method fw : fws) {
                if (!fw.getName().startsWith("getFw")) {
                    continue;
                }
                Integer weight = (Integer) fw.invoke(this);
                if (weight != null && weight != 0) {
                    String numberOfField = fw.getName().split("getFw")[1];
                    String fValueCode = (String) Template.class.getMethod("getF" + numberOfField).invoke(this);
                    specCode.append(StringUtils.defaultIfEmpty(fValueCode, "-"));
                }
            }
        } catch (Exception e) {
            logger.error("Error during Specification code generation", e);
        }

        return specCode.toString();
    }
}