public static ProjectData Create(ProjectId id) { return(new ProjectData(ProjectInformationData.Create(id), ImmutableDictionary <TaskId, TaskData> .Empty, ImmutableDictionary <ResourceId, ResourceData> .Empty, ImmutableDictionary <AssignmentId, AssignmentData> .Empty)); }
private ProjectData(ProjectInformationData information, ImmutableDictionary <TaskId, TaskData> taskMap, ImmutableDictionary <ResourceId, ResourceData> resourceMap, ImmutableDictionary <AssignmentId, AssignmentData> assignmentMap) { _information = information; _taskMap = taskMap; _resourceMap = resourceMap; _assignmentMap = assignmentMap; }
private ProjectData With(ProjectInformationData information, ImmutableDictionary <TaskId, TaskData> taskMap, ImmutableDictionary <ResourceId, ResourceData> resourceMap, ImmutableDictionary <AssignmentId, AssignmentData> assignmentMap) { if (information == _information && taskMap == _taskMap && resourceMap == _resourceMap && assignmentMap == _assignmentMap) { return(this); } return(new ProjectData(information, taskMap, resourceMap, assignmentMap)); }