code: @Override
      protected void triggerChange(String attrName) {
          super.triggerChange(attrName);
          Lock lock = lockForRead();
          try {
              Object value = super.getAttribute(attrName);
              if (value == null) {
                  cacheJsonObjs.remove(attrName);
              } else {
                  JsonNode node = value instanceof JsonNode ? (JsonNode) value
                          : SerializationUtils.readJson(value.toString());
                  cacheJsonObjs.put(attrName, node);
              }
          } finally {
              lock.unlock();
          }
      }
docs: {@inheritDoc}