/** * Aktiviert oder deaktiviert ein Recht * * @param _id * @param _istAktiviert * @param _istGlobalesRecht Legt fest, ob das Recht global benutzt werden soll oder im aktuellen * Kontext */ public void setRechtStatus(RechtId _id, boolean _istAktiviert, boolean _istGlobalesRecht) { List<String> refList = (_istGlobalesRecht) ? (listGlobaleRechte) : (listRechte); // Wenn das Recht noch nicht aktiviert ist und aktiviert werden soll if (!isRechtVerfuegbar(_id, _istGlobalesRecht) && _istAktiviert) { refList.add(_id.getString()); } // Wenn das Recht verfügbar ist und deaktiviert werden soll if (isRechtVerfuegbar(_id, _istGlobalesRecht) && !_istAktiviert) { refList.remove(_id.getString()); } }
/** * Liefert zurück, ob das Recht im Kontext oder global verfügbar ist * * @param _id * @param _istGlobalesRecht * @return */ public boolean isRechtVerfuegbar(RechtId _id, boolean _istGlobalesRecht) { List<String> refList = (_istGlobalesRecht) ? (listGlobaleRechte) : (listRechte); return refList.contains(_id.getString()); }