code: public <S, D> TypeMap<S, D> addMappings(PropertyMap<S, D> propertyMap) {
      Assert.notNull(propertyMap, "propertyMap");
      return config.typeMapStore.getOrCreate(null, propertyMap.sourceType,
          propertyMap.destinationType, null, propertyMap, null, engine);
    }
docs: Adds mappings from the {@code propertyMap} into the TypeMap corresponding to source type
  {@code S} and destination type {@code D}. Explicit mappings defined in the {@code propertyMap}
  will override any implicit mappings for the same properties.
  
  @param <S> source type
  @param <D> destination type
  @param propertyMap from which mappings should be loaded
  @return TypeMap corresponding to the {@code propertyMap}
  @throws IllegalArgumentException if {@code propertyMap} is null
  @throws ConfigurationException if a configuration error occurs while adding mappings for the
  {@code propertyMap}