code: public void merge(PropositionDefinitionCache otherCache) {
          if (otherCache != null) {
              for (Map.Entry<String, PropositionDefinition> me : otherCache.cache.entrySet()) {
                  this.cache.putIfAbsent(me.getKey(), me.getValue());
              }
          }
      }
docs: Merges the given cache into this one. Any proposition definitions that
  are not in this cache will be added.
  
  @param otherCache another proposition definition cache.