HPInc / jipp

A Java-compatible implementation of IPP
MIT License
153 stars 42 forks source link

Need new class for MediaColDatabase to be generated from genTypes.py #125

Closed HPSudip closed 2 years ago

HPSudip commented 2 years ago

As per latest IANA spec https://www.iana.org/assignments/ipp-registrations/ipp-registrations.xhtml, MediaColDatabase and MediaColReady has different attribute types for MediaSize member attribute.

media-col -> media -size -> (x-dimension, y-dimension) -> integer(1:MAX)

media-col-database -> media -size -> (x-dimension, y-dimension)  --> integer(1:MAX) | rangeOfInteger(1:MAX)

The requirement is such that, we should not allow rangeOfInteger in the job template attribute media-col, but only allows rangeOfInteger in the Printer Description attributes media-col-database and media-col-ready.

Currently genTypes.py is unable to create a separate class for MediaColDatabase and instead it tries to put everything back to MediaCol with a warning on new member. WARN: Collection type already has different member media-size

wifiprintguy commented 2 years ago

Keep an eye on this email thread on the ipp@pwg.org email reflector: https://www.pwg.org/pipermail/ipp/2022/021192.html

media-col-ready/media-size/y-dimension will have a syntax of integer(0:MAX)|rangeOfInteger(1:MAX) so that the printer can provide 0 (zero or nil) to indicate a roll length that is unknown or unbounded. That likely will also apply to media-col-database/media-size/y-dimension as well.

HPNavjot commented 2 years ago

Working latest XML file Internet Printing Protocol (IPP) Registrations.zip

HPNavjot commented 2 years ago

Issues addressed in pull #128 Changes in genTypes.py:

Rest changes in model files are due to execution of genTypes.py that reflects the latest IIP registrations.xml