if (CompositeAttributeHolder.class.isAssignableFrom(value.getClass())) { final CompositeAttributeHolder original = (CompositeAttributeHolder)value; final CompositeAttributeHolder copy = (CompositeAttributeHolder)original.clone(); getAttributes().put(key, copy);