<?php /*PLEASE DO NOT EDIT THIS CODE*/ /*This code was generated using the UMPLE 1.35.0.7523.c616a4dce modeling language!*/ class Mentor { //------------------------ // MEMBER VARIABLES //------------------------ //Mentor Attributes private $name; //Mentor Associations private $students; //------------------------ // CONSTRUCTOR //------------------------ public function __construct($aName, $allStudents) { $this->name = $aName; $this->students = array(); $didAddStudents = $this->setStudents($allStudents); if (!$didAddStudents) { throw new Exception("Unable to create Mentor, must have 4 students. See https://manual.umple.org?RE002ViolationofAssociationMultiplicity.html"); } } //------------------------ // INTERFACE //------------------------ public function setName($aName) { $wasSet = false; $this->name = $aName; $wasSet = true; return $wasSet; } public function getName() { return $this->name; } public function getStudent_index($index) { $aStudent = $this->students[$index]; return $aStudent; } public function getStudents() { $newStudents = $this->students; return $newStudents; } public function numberOfStudents() { $number = count($this->students); return $number; } public function hasStudents() { $has = $this->numberOfStudents() > 0; return $has; } public function indexOfStudent($aStudent) { $wasFound = false; $index = 0; foreach($this->students as $student) { if ($student->equals($aStudent)) { $wasFound = true; break; } $index += 1; } $index = $wasFound ? $index : -1; return $index; } public static function requiredNumberOfStudents() { return 4; } public static function minimumNumberOfStudents() { return 4; } public static function maximumNumberOfStudents() { return 4; } public function setStudents($newStudents) { $wasSet = false; $verifiedStudents = array(); foreach ($newStudents as $aStudent) { if (array_search($aStudent,$verifiedStudents) !== false) { continue; } $verifiedStudents[] = $aStudent; } if (count($verifiedStudents) != count($newStudents) || count($verifiedStudents) != self::requiredNumberOfStudents()) { return $wasSet; } $this->students = $verifiedStudents; $wasSet = true; return $wasSet; } public function equals($compareTo) { return $this == $compareTo; } public function delete() { $this->students = array(); } } ?> <?php /*PLEASE DO NOT EDIT THIS CODE*/ /*This code was generated using the UMPLE 1.35.0.7523.c616a4dce modeling language!*/ class Student { //------------------------ // MEMBER VARIABLES //------------------------ //Student Attributes private $number; //------------------------ // CONSTRUCTOR //------------------------ public function __construct($aNumber) { $this->number = $aNumber; } //------------------------ // INTERFACE //------------------------ public function setNumber($aNumber) { $wasSet = false; $this->number = $aNumber; $wasSet = true; return $wasSet; } public function getNumber() { return $this->number; } public function equals($compareTo) { return $this == $compareTo; } public function delete() {} } ?>