package com.sonymusic.dx.persistence.gras;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;

@Entity
@Table(name = "vgras066")
public class ProductClass extends RAASClientSpecificEntity {

    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "prod_class_key")
    private String productClassKey;
    @Column(name = "prod_class_name")
    private String productClassName;
    @Column(name = "prod_class_short_name")
    private String productClassShortName;

    /**
     * Protected, no-argument constructor should only be used by persistence engine.
     */
    protected ProductClass() {}

    public String getProductClassKey() {
        return productClassKey;
    }

    public void setProductClassKey(String productClassKey) {
        this.productClassKey = productClassKey;
    }

    public String getProductClassName() {
        return productClassName;
    }

    public void setProductClassName(String productClassName) {
        this.productClassName = productClassName;
    }

    public String getProductClassShortName() {
        return productClassShortName;
    }

    public void setProductClassShortName(String productClassShortName) {
        this.productClassShortName = productClassShortName;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((productClassKey == null) ? 0 : productClassKey.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        final ProductClass other = (ProductClass) obj;
        if (productClassKey == null) {
            if (other.productClassKey != null)
                return false;
        } else if (!productClassKey.equals(other.productClassKey))
            return false;
        return true;
    }

}

