Пример #1
0
  public void execute(final Reader in, final PrintStream out)
      throws ParseException, HandlerException {

    parser.parse(
        in,
        new MowItNowHandler() {

          private Grid grid;
          private Mower mower;

          @Override
          public void order(Order order) throws HandlerException {
            try {
              mower = executor.execute(grid, mower, order);
            } catch (ExecutionException e) {
              throw new HandlerException(e);
            }
          }

          @Override
          public void endMower() throws HandlerException {
            out.println(MowItNowApp.this.toString(mower));
          }

          @Override
          public void end() {}

          @Override
          public void beginMower(Mower mower) {
            this.mower = mower;
          }

          @Override
          public void begin(Grid grid) {
            this.grid = grid;
          }
        });
  }