public static SprintGebruiker SprintGebruiker(Gebruiker gebruiker, Sprint sprint, SprintRol sprintRol) { SprintGebruiker sprintGebruiker = new SprintGebruiker(gebruiker, sprint, sprintRol); Project project = Project(); project.VoegSprintToe(sprint); return Persist(sprintGebruiker); }
/// <summary> /// Maak een sprintgebruiker op basis van de gegeven gebruiker, sprint en sprintrol. /// </summary> /// <param name="gebruiker">De gebruiker.</param> /// <param name="sprint">De sprint.</param> public SprintGebruiker(Gebruiker gebruiker, Sprint sprint, SprintRol sprintRol) { if (gebruiker == null) throw new ArgumentNullException("gebruiker", "De gebruiker mag niet null zijn."); if (sprint == null) throw new ArgumentNullException("sprint", "De sprint mag niet null zijn."); gebruiker.VoegSprintGebruikerToe(this); sprint.VoegSprintGebruikerToe(this); this.sprintRol = sprintRol; }
/// <summary> /// Voeg een gebruiker toe aan deze sprint. Als er al een sprintgebruiker voor deze gebruiker in deze sprint bestaat /// wordt er geen nieuwe springebruiker gemaakt, maar deze bestaande teruggegeven. /// </summary> /// <param name="gebruiker">The gebruiker.</param> /// <param name="sprintRol">The sprint rol.</param> /// <returns>De nieuwe sprintgebruiker.</returns> public virtual SprintGebruiker VoegGebruikerToe(Gebruiker gebruiker, SprintRol sprintRol) { SprintGebruiker sprintGebruiker = GeefSprintGebruikerVoor(gebruiker); if (sprintGebruiker != null) return sprintGebruiker; return new SprintGebruiker(gebruiker, this, sprintRol); }
/// <summary> /// Voegt een rol toe aan de huidige set met sprintrollen /// </summary> /// <param name="nieuweSprintRol"></param> public virtual void VoegRolToe(SprintRol nieuweSprintRol) { this.sprintRol |= nieuweSprintRol; }
/// <summary> /// Verwijder een rol uit de huidige set met sprintrollen /// </summary> /// <param name="teVerwijderenSprintRol"></param> public virtual void VerwijderRol(SprintRol teVerwijderenSprintRol) { sprintRol &= ~teVerwijderenSprintRol; }
/// <summary> /// Geeft aan of deze sprintgebruiker PRECIES deze set met rollen heeft /// </summary> /// <param name="role"></param> /// <returns></returns> public virtual bool HeeftSprintRolExact(SprintRol role) { //hmm //return ((this.sprintRol & sprintRol) == sprintRol); return (sprintRol == role); }
/// <summary> /// Geeft aan of deze sprintgebruiker minstens 1 van de gegevens set met sprintrollen heeft /// </summary> /// <param name="role"></param> /// <returns></returns> public virtual bool HeeftSprintRol(SprintRol role) { return ((sprintRol & role) != 0); }