Exemple #1
0
  public boolean setWards(Ward... newWards) {
    boolean wasSet = false;
    ArrayList<Ward> verifiedWards = new ArrayList<Ward>();
    for (Ward aWard : newWards) {
      if (verifiedWards.contains(aWard)) {
        continue;
      }
      verifiedWards.add(aWard);
    }

    if (verifiedWards.size() != newWards.length || verifiedWards.size() < minimumNumberOfWards()) {
      return wasSet;
    }

    ArrayList<Ward> oldWards = new ArrayList<Ward>(wards);
    wards.clear();
    for (Ward aNewWard : verifiedWards) {
      wards.add(aNewWard);
      if (oldWards.contains(aNewWard)) {
        oldWards.remove(aNewWard);
      } else {
        aNewWard.addEmployee(this);
      }
    }

    for (Ward anOldWard : oldWards) {
      anOldWard.removeEmployee(this);
    }
    wasSet = true;
    return wasSet;
  }
Exemple #2
0
 public void delete() {
   for (int i = shifts.size(); i > 0; i--) {
     Shift aShift = shifts.get(i - 1);
     aShift.delete();
   }
   for (int i = privileges.size(); i > 0; i--) {
     Privilege aPrivilege = privileges.get(i - 1);
     aPrivilege.delete();
   }
   Hospital placeholderHospital = hospital;
   this.hospital = null;
   placeholderHospital.removeEmployee(this);
   ArrayList<Ward> copyOfWards = new ArrayList<Ward>(wards);
   wards.clear();
   for (Ward aWard : copyOfWards) {
     aWard.removeEmployee(this);
   }
 }
Exemple #3
0
  public boolean removeWard(Ward aWard) {
    boolean wasRemoved = false;
    if (!wards.contains(aWard)) {
      return wasRemoved;
    }

    if (numberOfWards() <= minimumNumberOfWards()) {
      return wasRemoved;
    }

    int oldIndex = wards.indexOf(aWard);
    wards.remove(oldIndex);
    if (aWard.indexOfEmployee(this) == -1) {
      wasRemoved = true;
    } else {
      wasRemoved = aWard.removeEmployee(this);
      if (!wasRemoved) {
        wards.add(oldIndex, aWard);
      }
    }
    return wasRemoved;
  }
Exemple #4
0
 public boolean addWard(Ward aWard) {
   boolean wasAdded = false;
   if (wards.contains(aWard)) {
     return false;
   }
   if (wards.contains(aWard)) {
     return false;
   }
   if (wards.contains(aWard)) {
     return false;
   }
   wards.add(aWard);
   if (aWard.indexOfEmployee(this) != -1) {
     wasAdded = true;
   } else {
     wasAdded = aWard.addEmployee(this);
     if (!wasAdded) {
       wards.remove(aWard);
     }
   }
   return wasAdded;
 }