complex-barcode/hibc-lic-primary-data-codetext.js

const MwHIBCLICPrimaryDataCodetext = require("../_mwbridge/_mw-bridge.js").MwHIBCLICPrimaryDataCodetext;
const HIBCLICComplexCodetext= require("./hibc-lic-complex-codetext");
const PrimaryData= require("./primary-data");

/**
 * <p>
 * Class for encoding and decoding the text embedded in the HIBC LIC code which stores primary data.
 * </p>
 * This sample shows how to encode and decode HIBC LIC using HIBCLICPrimaryCodetext.
 * @example
 * let complexCodetext  = new HIBCLICPrimaryCodetext();
 * complexCodetext.setBarcodeType(EncodeTypes.HIBCQRLIC);
 * complexCodetext.setData(new PrimaryData());
 * complexCodetext.getData().setProductOrCatalogNumber("12345");
 * complexCodetext.getData().setLabelerIdentificationCode("A999");
 * complexCodetext.getData().setUnitOfMeasureID(1);
 * let generator = new ComplexBarcodeGenerator(complexCodetext);
 * let image = generator.generateBarCodeImage(BarCodeImageFormat.PNG);
 * let reader = new BarCodeReader(image, null, DecodeType.HIBCQRLIC);
 * reader.readBarCodes();
 * let codetext = reader.getFoundBarCodes()[0].getCodeText();
 * let result = ComplexCodetextReader.tryDecodeHIBCLIC(codetext) ;
 * print("Product or catalog number: " + result.getData().getProductOrCatalogNumber());
 * print("Labeler identification code: " + result.getData().getLabelerIdentificationCode());
 * print("Unit of measure ID: " + result.getData().getUnitOfMeasureID());
 */
class HIBCLICPrimaryDataCodetext extends HIBCLICComplexCodetext
{

    data;

    constructor()
    {
        super(new MwHIBCLICPrimaryDataCodetext());
    }

    static _fromMwObject(java_class)
    {
        let obj = new HIBCLICPrimaryDataCodetext();
        obj.setJavaClass(java_class);
        return obj;
    }

    _initializeWrapperMembers()
    {
        this.data = PrimaryData._fromMwObject(this.getJavaClass().getDataSync());
    }

    /**
     * <p>
     * Identifies primary data.
     * </p>
     */
    getData()
    {
        return this.data;
    }

    /**
     * <p>
     * Identifies primary data.
     * </p>
     */
    setData(value)
    {
        this.getJavaClass().setDataSync(value.getJavaClass());
        this.data = value;
    }

    /**
     * <p>
     * Constructs codetext
     * </p>
     *
     * @return Constructed codetext
     */
    getConstructedCodetext()
    {
        return this.getJavaClass().getConstructedCodetextSync();
    }

    /**
     * <p>
     * Initializes instance from constructed codetext.
     * </p>
     *
     * @param constructedCodetext Constructed codetext.
     */
    initFromString(constructedCodetext)
    {
        this.getJavaClass().initFromStringSync(constructedCodetext);
    }

    /**
     * <p>
     * Returns a value indicating whether this instance is equal to a specified {@code HIBCLICPrimaryDataCodetext} value.
     * </p>
     *
     * @param obj An {@code HIBCLICPrimaryDataCodetext} value to compare to this instance.
     * @return {@code <b>true</b>} if obj has the same value as this instance; otherwise, {@code <b>false</b>}.
     */
    equals(obj)
    {
        return this.getJavaClass().equalsSync(obj.getJavaClass());
    }

    /**
     * <p>
     * Returns the hash code for this instance.
     * </p>
     *
     * @return A 32-bit signed integer hash code.
     */
    hashCode()
    {
        return this.getJavaClass().hashCodeSync();
    }
}
module.exports = HIBCLICPrimaryDataCodetext