const MwMaxiCodeStandardCodetext = require("../_mwbridge/_mw-bridge.js").MwMaxiCodeStandardCodetext;
const MaxiCodeCodetext = require("./maxicode-codetext");
const BarcodeException = require("../barcode-exception");
/**
* Class for encoding and decoding MaxiCode codetext for modes 4, 5 and 6.
*
* @example
* //Mode 4
* let maxiCodeCodetext = new MaxiCodeStandardCodetext();
* maxiCodeCodetext.setMode(MaxiCodeMode.MODE_4);
* maxiCodeCodetext.setMessage("Test message");
* let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext());
* complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
*
* @example
* //Mode 5
* let maxiCodeCodetext = new MaxiCodeStandardCodetext();
* maxiCodeCodetext.setMode(MaxiCodeMode.MODE_5);
* maxiCodeCodetext.setMessage("Test message");
* let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext());
* complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
*
* @example
* //Mode 6
* let maxiCodeCodetext = new MaxiCodeStandardCodetext();
* maxiCodeCodetext.setMode(MaxiCodeMode.MODE_6);
* maxiCodeCodetext.setMessage("Test message");
* let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext());
* complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
*/
class MaxiCodeStandardCodetext extends MaxiCodeCodetext
{
constructor()
{
try
{
super(new MwMaxiCodeStandardCodetext());
}
catch (ex)
{
throw new BarcodeException(ex);
}
}
static _fromMwObject(mwObject)
{
let _class = new MaxiCodeStandardCodetext();
_class.setJavaClass(mwObject);
return _class;
}
/**
* Gets message.
*/
getMessage()
{
return this.getJavaClass().getMessageSync();
}
/**
* Sets message.
*/
setMessage(value)
{
this.getJavaClass().setMessageSync(value);
}
/**
* Sets MaxiCode mode. Standart codetext can be used only with modes 4, 5 and 6.
*/
setMode(mode)
{
this.getJavaClass().setModeSync(mode);
}
/**
* Gets MaxiCode mode.
* @return MaxiCode mode
*/
getMode()
{
return this.getJavaClass().getModeSync();
}
/**
* Constructs codetext
* @return Constructed codetext
*/
getConstructedCodetext()
{
return this.getJavaClass().getConstructedCodetextSync();
}
/**
* Initializes instance from constructed codetext.
* @param constructedCodetext Constructed codetext.
*/
initFromString(constructedCodetext)
{
this.getJavaClass().initFromStringSync(constructedCodetext);
}
/**
* Returns a value indicating whether this instance is equal to a specified <see cref="MaxiCodeStandardCodetext"/> value.
* @param obj An <see cref="MaxiCodeStandardCodetext"/> value to compare to this instance.
* @return if obj has the same value as this instance; otherwise, <b>false</b>.
*/
equals(obj)
{
return this.getJavaClass().equalsSync(obj.getJavaClass());
}
/**
* Returns the hash code for this instance.
* @return A 32-bit signed integer hash code
*/
getHashCode()
{
return this.getJavaClass().getHashCodeSync();
}
_initializeWrapperMembers()
{
}
}
module.exports = MaxiCodeStandardCodetext