|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object ru.kuban.rpc.fiscal.AbstractPrinterQueue ru.kuban.rpc.fiscal.PrinterQueue
public class PrinterQueue
Очередь принтера. Вся работа с принтером производится через данную очередь. Все методы данного класса блокирующие, т.е. управление возвращается только после выполнения метода. Класс является потокобезопасным, все обращения к методам данного класса из разных потоков выполняются строго по очереди и образуют очередь принтера.
Method Summary | |
---|---|
void |
addBufferListener(PrinterBufferListener l)
Регистрирует слушатель событий принтера, связанных с изменением буфера Z-отчетов принтера. |
ZReport |
closeSession()
Закрывает текущую смену на принтере. |
java.lang.Integer |
getBufSize()
Получает из принтера размер буфера Z-отчетов. |
void |
initPrinter()
Инициализирует принтер. |
boolean |
isSessionOpened()
Получает из принтера данные о текущей смене и если текущая смена открыта возвращает true . |
boolean |
isSessionOver()
Получает из принтера данные о текущей смене и если текущая смена открыта и превысила 24 часа возвращает true . |
FiscalData |
printFiscalCheck(double totalSum,
double... sum)
Печатает на принтере фискальный чек и возвращает фискальные данные в виде FiscalData . |
void |
printNewRollCheck()
Печатает на принтере чек смены рулона, аналогичен printTestCheck . |
void |
printTestCheck(java.lang.String... str)
Печатает на принтере тестовый нефискальный чек. |
void |
printXReport()
Распечатывает X-отчет текущей смены. |
void |
printZReports()
Распечатывает Z-отчеты из буфера принтера. |
void |
removeBufferListener(PrinterBufferListener l)
Удаляет слушатель событий принтера, связанных с изменением буфера Z-отчетов принтера. |
PrinterInfo |
updateStatus()
Считывает из принтера данные, такие как серийный номер, номер ЭКЛЗ и т.д. |
Methods inherited from class ru.kuban.rpc.fiscal.AbstractPrinterQueue |
---|
addQueueListener, addStatusListener, awaitTermination, getErrorDescr, getFiscalStatus, getLength, getPrinterStatus, getStatus, removeQueueListener, removeStatusListener, shutdown |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public void addBufferListener(PrinterBufferListener l)
l
- слушатель событий буфера принтера. Если равен null
исключение выброшено не будет и слушатель добавлен не будетpublic void removeBufferListener(PrinterBufferListener l)
l
- слушатель событий буфера принтера. Если равен null
исключение выброшено не будет и слушатель удален не будетpublic void initPrinter() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic PrinterInfo updateStatus() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic void printTestCheck(java.lang.String... str) throws java.lang.InterruptedException, PrinterException
str
- строки для печати на тестовом чеке
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic void printNewRollCheck() throws java.lang.InterruptedException, PrinterException
printTestCheck
.
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic FiscalData printFiscalCheck(double totalSum, double... sum) throws java.lang.InterruptedException, PrinterException, PrinterSessionOverException
FiscalData
.
totalSum
- сумма "итого", должна быть равна сумме промежуточных суммsum
- промежуточные суммы, должна быть как минимум одна промежуточная
сумма
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтером
PrinterSessionOverException
- возникает при попытке печати
фискального чека при истекшей текущей смене (если истекло 24 часа)FiscalData
public java.lang.Integer getBufSize() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic boolean isSessionOpened() throws java.lang.InterruptedException, PrinterException
true
. В противном случае возвращает
false
. Если смена открыта, её можно закрыть методом
closeSession()
.
true
- смена открыта, false
- смена не
открыта
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромcloseSession()
public boolean isSessionOver() throws java.lang.InterruptedException, PrinterException
true
. В противном случае
возвращает false
. Если смена привысила 24 часа, следующий
фискальный чек приведет к ошибке, чтобы этого избежать необходимо закрыть
текущую смену методом closeSession()
.
true
- смена превысила 24 часа, false
-
смена еще не превысила 24 часа
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромcloseSession()
public void printXReport() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромpublic ZReport closeSession() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтеромZReport
public void printZReports() throws java.lang.InterruptedException, PrinterException
java.lang.InterruptedException
- возникает если очередь принтера будет
прервана во время выполнения
PrinterException
- возникает при ошибке взаимодействия с принтером
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |