package org.netbeans.gradle.model;
import java.io.Serializable;
import java.util.Map;
import org.netbeans.gradle.model.internal.CustomSerializedMap;
import org.netbeans.gradle.model.util.CollectionUtils;
import org.netbeans.gradle.model.util.TransferableExceptionWrapper;
final class ActionFetchedProjectModels implements Serializable {
private static final long serialVersionUID = 1L;
private final GradleMultiProjectDef projectDef;
private final CustomSerializedMap projectInfoResults;
private final Map<Class<?>, Object> toolingModels;
private final Throwable issue;
public ActionFetchedProjectModels(
GradleMultiProjectDef projectDef,
CustomSerializedMap projectInfoResults,
Map<Class<?>, Object> toolingModels,
Throwable issue) {
if (projectDef == null) throw new NullPointerException("projectDef");
if (projectInfoResults == null) throw new NullPointerException("projectInfoResults");
this.projectDef = projectDef;
this.projectInfoResults = projectInfoResults;
this.toolingModels = CollectionUtils.copyNullSafeHashMap(toolingModels);
this.issue = TransferableExceptionWrapper.wrap(issue);
}
public Throwable getIssue() {
return issue;
}
public GradleMultiProjectDef getProjectDef() {
return projectDef;
}
public CustomSerializedMap getProjectInfoResults() {
return projectInfoResults;
}
public Map<Class<?>, Object> getToolingModels() {
return toolingModels;
}
}