code: public static void checkHeaderTypes(Map<String, Object> headers) {
          if (headers.containsKey(IntegrationMessageHeaderAccessor.SEQUENCE_NUMBER)) {
              String number = headers.get(IntegrationMessageHeaderAccessor.SEQUENCE_NUMBER).toString();
              headers.put(IntegrationMessageHeaderAccessor.SEQUENCE_NUMBER, Integer.valueOf(number));
          }
  
          if (headers.containsKey(IntegrationMessageHeaderAccessor.SEQUENCE_SIZE)) {
              String size = headers.get(IntegrationMessageHeaderAccessor.SEQUENCE_SIZE).toString();
              headers.put(IntegrationMessageHeaderAccessor.SEQUENCE_SIZE, Integer.valueOf(size));
          }
  
          if (headers.containsKey(IntegrationMessageHeaderAccessor.PRIORITY)) {
              String size = headers.get(IntegrationMessageHeaderAccessor.PRIORITY).toString();
              headers.put(IntegrationMessageHeaderAccessor.PRIORITY, Integer.valueOf(size));
          }
      }
docs: Method checks all header types to meet Spring Integration type requirements. For instance
  sequence number must be of type {@link Integer}.
  
  @param headers the headers to check.