/** * Creates an immutable copy of a {@link PutOptions} value. * Uses accessors to get values to initialize the new immutable instance. * If an instance is already immutable, it is returned as is. * @param instance The instance to copy * @return A copied immutable PutOptions instance */ public static ImmutablePutOptions copyOf(PutOptions instance) { if (instance instanceof ImmutablePutOptions) { return (ImmutablePutOptions) instance; } return ImmutablePutOptions.builder() .from(instance) .build(); }