code: @Override
      public void handleChannelData(final String action, final JSONArray jsonArray) throws BitfinexClientException {
          // Example: [13182,1,-0.1]
          try {
              final List<BitfinexOrderBookEntry> entries = new ArrayList<>();
  
              // Snapshots contain multiple Orderbook entries, updates only one
              if (jsonArray.get(0) instanceof JSONArray) {
                  for (int pos = 0; pos < jsonArray.length(); pos++) {
                      final JSONArray parts = jsonArray.getJSONArray(pos);
                      BitfinexOrderBookEntry entry = jsonToOrderBookEntry(parts);
                      entries.add(entry);
                  }
              } else {
                  BitfinexOrderBookEntry entry = jsonToOrderBookEntry(jsonArray);
                  entries.add(entry);
              }
              orderBookEntryConsumer.accept(symbol, entries);
          } catch (JSONException e) {
              throw new BitfinexClientException(e);
          }
      }
docs: {@inheritDoc}