@Override public void objectMapper(ObjectMapper objectMapper) { ObjectMappers mappers = objectMappers.get(objectMapper.fullPath()); if (mappers == null) { mappers = new ObjectMappers(objectMapper); } else { mappers = mappers.concat(objectMapper); } objectMappers = newMapBuilder(objectMappers).put(objectMapper.fullPath(), mappers).immutableMap(); // update the hasNested flag if (objectMapper.nested().isNested()) { hasNested = true; } }
private void addObjectMappers(ObjectMapper[] objectMappers) { synchronized (mutex) { MapBuilder<String, ObjectMappers> fullPathObjectMappers = newMapBuilder(this.fullPathObjectMappers); for (ObjectMapper objectMapper : objectMappers) { ObjectMappers mappers = fullPathObjectMappers.get(objectMapper.fullPath()); if (mappers == null) { mappers = new ObjectMappers(objectMapper); } else { mappers = mappers.concat(objectMapper); } fullPathObjectMappers.put(objectMapper.fullPath(), mappers); // update the hasNested flag if (objectMapper.nested().isNested()) { hasNested = true; } } this.fullPathObjectMappers = fullPathObjectMappers.map(); } }