Console.java 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. package org.django.acquabooks.io;
  2. import org.apache.commons.lang3.StringUtils;
  3. import org.django.acquabooks.pojos.Libro;
  4. import java.io.PrintStream;
  5. import java.text.DateFormat;
  6. import java.text.SimpleDateFormat;
  7. import java.util.Date;
  8. /**
  9. * Created by conte on 16/10/15.
  10. */
  11. public class Console {
  12. public static DateFormat TS_DATE_FORMAT = new SimpleDateFormat("YYYYddMMHHmmss");
  13. public static DateFormat READABLE_DATE_FORMAT = new SimpleDateFormat("dd.MM.YYYY HH:mm:ss");
  14. public static int CONSOLE_ROW_LENGHT = 80;
  15. private static PrintStream out;
  16. public static void genericWarn(String msg) {
  17. genericWarn(System.out,msg);
  18. }
  19. public static void genericWarn(PrintStream out, String msg){
  20. out.println(" (((");
  21. out.println(" (@ @)");
  22. out.println("-----------------------------------ooO--(_)--Ooo--------------------------------");
  23. out.println("| "+ StringUtils.rightPad(msg, CONSOLE_ROW_LENGHT - 3 - msg.length()) +"|");
  24. out.println("--------------------------------------------------------------------------------");
  25. }
  26. public static void genericErr(String msg) {
  27. genericErr(System.err, msg);
  28. }
  29. public static void genericErr(PrintStream out, String msg){
  30. out.println(" §§§");
  31. out.println(" (+ +)");
  32. out.println("-----------------------------------ooO--(_)--Ooo--------------------------------");
  33. out.println("| "+ StringUtils.rightPad(msg, CONSOLE_ROW_LENGHT - 3 - msg.length()) +"|");
  34. out.println("--------------------------------------------------------------------------------");
  35. }
  36. public static void ok(PrintStream out){
  37. Ansi a = new Ansi(null, Ansi.AnsiColor.GREEN, null);
  38. a.outLine(" OOOOOOOOO KKKKKKKKK KKKKKKK");
  39. a = new Ansi(null, Ansi.AnsiColor.BLUE, null);
  40. a.outLine(" OO:::::::::OO K:::::::K K:::::K");
  41. a = new Ansi(null, Ansi.AnsiColor.YELLOW, null);
  42. a.outLine(" OO:::::::::::::OO K:::::::K K:::::K");
  43. a = new Ansi(null, Ansi.AnsiColor.WHITE, null);
  44. a.outLine("::::::OOO:::::::OK:::::::K K::::::K");
  45. a = new Ansi(null, Ansi.AnsiColor.MAGENTA, null);
  46. a.outLine(":::::O O::::::OKK::::::K K:::::KKK");
  47. a = new Ansi(null, Ansi.AnsiColor.CYAN, null);
  48. a.outLine("::::O O:::::O K:::::K K:::::K ");
  49. a = new Ansi(null, Ansi.AnsiColor.RED, null);
  50. a.outLine("::::O O:::::O K::::::K:::::K ");
  51. a = new Ansi(null, Ansi.AnsiColor.BLUE, null);
  52. a.outLine("::::O O:::::O K:::::::::::K ");
  53. a = new Ansi(null, Ansi.AnsiColor.YELLOW, null);
  54. a.outLine("::::O O:::::O K:::::::::::K ");
  55. a = new Ansi(null, Ansi.AnsiColor.MAGENTA, null);
  56. a.outLine("::::O O:::::O K::::::K:::::K ");
  57. a = new Ansi(null, Ansi.AnsiColor.GREEN, null);
  58. a.outLine("::::O O:::::O K:::::K K:::::K ");
  59. a = new Ansi(null, Ansi.AnsiColor.WHITE, null);
  60. a.outLine(":::::O O::::::OKK::::::K K:::::KKK");
  61. a = new Ansi(null, Ansi.AnsiColor.RED, null);
  62. a.outLine("::::::OOO:::::::OK:::::::K K::::::K");
  63. a = new Ansi(null, Ansi.AnsiColor.YELLOW, null);
  64. a.outLine(" OO:::::::::::::OO K:::::::K K:::::K");
  65. a = new Ansi(null, Ansi.AnsiColor.BLUE, null);
  66. a.outLine(" OO:::::::::OO K:::::::K K:::::K");
  67. a = new Ansi(null, Ansi.AnsiColor.MAGENTA, null);
  68. a.outLine(" OOOOOOOOO KKKKKKKKK KKKKKKK");
  69. a = new Ansi(null, Ansi.AnsiColor.BLUE, null);
  70. a.outLine(" ");
  71. }
  72. public static void welcome(PrintStream out){
  73. welcome(out,"ACQUATORPIDA BOOK SHOCK");
  74. }
  75. public static void welcome(PrintStream out, String msg){
  76. Ansi a = new Ansi(Ansi.Attribute.BLINK, Ansi.AnsiColor.GREEN, null);
  77. out.print(" ");
  78. out.print("HH");
  79. out.println();
  80. out.println(" HH");
  81. out.println(" BBB HH ,z.");
  82. out.println(" === .___. HH %%%% .o. ,zZZZ>");
  83. out.println(" BBB | | HH 838 \\\\\\\\ EEE AAAAA ,0X0' ,zZZZ");
  84. out.println(" BBB |<<<| HH 838 %%%% EEE ## DDDDD ,0X0' ,zZZZ");
  85. a = new Ansi(Ansi.Attribute.BLINK, Ansi.AnsiColor.YELLOW, null);
  86. out.print(" BBB | ");
  87. a.out("Z");
  88. out.println(" | HH 838 %GR% +++ ## AAAAA ,0X0' ,zZZZ");
  89. out.print(" BBB | ");
  90. a.out("T");
  91. out.println(" | HH 838 %%%% EEE ## <<v>> ,0X0' ,zZZZ");
  92. out.print(" BBB | ");
  93. a.out("L");
  94. out.println(" | HH 838 %%%% EEE ## AAAAA ,0X0',zZZZ\"HH$HHHHHHHDDHH$HH");
  95. out.println(" === |<<<| HH 838 //// EEE ## AAAAA.0X0;zZZZ\" EE$EEEEEEEDDEE$EE");
  96. out.println(" BBB |___| HH 838 %%%% EEE ## AAAAA'\"0' \"Z\" HH$HHHHHHHDDHH$HH");
  97. out.println("| |");
  98. out.println("| "+ StringUtils.rightPad(msg, CONSOLE_ROW_LENGHT - 18)+"|");
  99. out.println(" ---------------------------------------------------------------");
  100. }
  101. public static void main(String[] args){
  102. Ansi a = new Ansi(Ansi.Attribute.BLINK, Ansi.AnsiColor.GREEN, null);
  103. String msg = a.colorize("Porco dio");
  104. // a.println(System.out, msg);
  105. Console.welcome(System.out,"ACQUATORPIDA BOOK SHOCK");
  106. }
  107. public static void detail(Libro l,PrintStream out){
  108. Ansi a = new Ansi(Ansi.Attribute.BLINK, Ansi.AnsiColor.YELLOW, null);
  109. out.println("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  110. out.println("Barcode: "+l.getBarcode() + " Ultima modifica: " + READABLE_DATE_FORMAT.format(new Date(l.getUltimoAggiornamento())));
  111. out.println("Titolo: " + l.getTitolo());
  112. out.println("Autore: "+l.getAutore());
  113. out.print("Prezzo: " + l.getPrezzo() + " Prezzo Scontato: ");
  114. if(l.getSconto()!=0) {
  115. a.outLine(l.getPrezzoScontato().toString());
  116. }else{
  117. out.println(l.getPrezzoScontato());
  118. }
  119. out.println("QA: "+l.getQa() + " QV: " +l.getQv() + " Margine: "+ l.getPercentuale() + " Sconto: " + l.getSconto());
  120. out.println("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  121. }
  122. }