@SuppressWarnings({"removal"})
    protected Object objectClone(Object object) {
        // Fastpath for commonly used classes
        if (object instanceof FreezableClass)
            return ((FreezableClass)object).clone();
        else if (object instanceof PublicCloneable)
            return ((PublicCloneable<?>)object).clone();
        else if (object instanceof com.yahoo.processing.request.properties.PublicCloneable)
            return ((com.yahoo.processing.request.properties.PublicCloneable<?>)object).clone();
        else if (object instanceof LinkedList)
            return ((LinkedList<?>) object).clone();
        else if (object instanceof ArrayList)
            return ((ArrayList<?>) object).clone();
        else if (object instanceof HashMap)
            return ((HashMap<?, ?>) object).clone();
        else if (object instanceof HashSet)
            return ((HashSet<?>) object).clone();
        
        return cloneByReflection(object);
    }
Clones this object if it is clonable, and the clone is public. Returns null if not.
container-core/src/main/java/com/yahoo/processing/request/CloneHelper.java