code: private void initValues() throws VarExploderException
      {
  
          Class<?> c = source.getClass();
          if (c.isAnnotation() || c.isArray() || c.isEnum() || c.isPrimitive())
          {
              throw new IllegalArgumentException("The value must an object");
          }
  
          if(source instanceof Map )
          {
              this.pairs = (Map<String,Object>) source;
              return;
          }
          Method[] methods = c.getMethods();
          for (Method method : methods)
          {
              inspectGetters(method);
          }
          scanFields(c);
      }
docs: Initializes the values from the object properties and constructs a
  map from those values.
  
  @throws VarExploderException