package org.netbeans.gradle.model.internal; import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.List; import org.netbeans.gradle.model.util.SerializationCache; import org.netbeans.gradle.model.util.SerializationUtils; public final class SerializedEntries implements Serializable { private static final long serialVersionUID = 1L; private final byte[] serializedValues; public SerializedEntries(Collection<?> values) { this.serializedValues = SerializationUtils.serializeObject(new ArrayList<Object>(values)); } public List<?> getUnserialized(SerializationCache cache, ClassLoader classLoader) { try { Object result = classLoader != null ? SerializationUtils.deserializeObject(serializedValues, cache, classLoader) : SerializationUtils.deserializeObject(serializedValues, cache); return (List<?>)result; } catch (ClassNotFoundException ex) { throw new RuntimeException(ex); } } }