GIAI Builder returns null when input RFID tag is not valid
yolave opened this issue · comments
When using org.epctagcoder.parse.GIAI.ParseGIAI.Builder()
to create a new instance, setting an invalid RFID tag in the method org.epctagcoder.parse.GIAI.ParseGIAI.ChoiceStep.withRFIDTag(String)
produces a NullPointerException
when finally calling org.epctagcoder.parse.GIAI.ParseGIAI.BuildStep.build()
method.
For example, the following snippet will fail:
ParseGIAI.Builder()
.withRFIDTag("anyNonComplaintValue").build()
.getGIAI()
Instead of null
, the org.epctagcoder.parse.GIAI.ParseGIAI.BuildStep.build()
method might throw a ParseException
(or any other dedicated exception) or even better, it could return a java.util.Optional
to be easier to check the result of the parsing.
Thank you for this awesome library!
Hi Yolave!
I'm analyzing, I prefer Optional. I don't particularly like the idea of throwing an exception, although it is very easy to implement.
As I implemented using the step builder pattern I will have problems cascading Optional.
It would be a good challenge.
Thank you for the idea.