code: public Map<String, Object> getProperties() {
          Map<String, Object> result = null;
          if (body != null) {
              Map<String, Object> prop;
              try {
                  prop = body.getProperties();
              } catch (IllegalStateException e) {
                  // handle when both object and json are null for this body
                  return null;
              }
              if (result == null) {
                  result = new HashMap<String, Object>();
              }
              result.putAll(prop);
          }
          return result;
      }
docs: //////////////////////////////////////////////////////////