code: public void write(Object object, Object value) {
          if(object == null) {
              String msg = "Can not update the identifier \"" + _identifier + "\" on a null value object.";
              LOGGER.error(msg);
              throw new RuntimeException(msg);
          }
  
          if(TRACE_ENABLED)
              LOGGER.trace("Update property named \"" + _identifier + "\" on object of type: \"" + object.getClass().getName() + "\"");
  
          if(object instanceof Map)
              mapUpdate((Map)object, _identifier, value);
          else if(object instanceof List) {
              int i = parseIndex(_identifier);
              listUpdate((List)object, i, value);
          }
          else if(object.getClass().isArray()) {
              int i = parseIndex(_identifier);
              arrayUpdate(object, i, value);
          }
          else beanUpdate(object, _identifier, value);
      }
docs: Update the value represented by this token on the given object <code>object</code> with
  the value <code>value</code>.
  @param object the object to update
  @param value the new value