docs: @Handler(dynamic = true)
      @SuppressWarnings({ "PMD.DataflowAnomalyAnalysis",
          "PMD.AvoidLiteralsInIfCondition",
          "PMD.AvoidInstantiatingObjectsInLoops" })
      public void onConfigurationUpdate(ConfigurationUpdate event)
              throws IOException {
          boolean changed = false;
          for (String path : event.paths()) {
              if ("/".equals(path) && !event.values(path).isPresent()) {
                  // Special case, "remove root", i.e. all configuration data
                  cache.clear();
                  changed = true;
              }
              changed = changed || handleSegment(cache,
                  new StringTokenizer(path, "/"), event.values(path));
          }
          if (changed) {
              try (Writer out = new OutputStreamWriter(
                  Files.newOutputStream(file.toPath()), "utf-8");
                      JsonBeanEncoder enc = JsonBeanEncoder.create(out)) {
                  enc.writeObject(cache);
              }
          }
      }