Package de.elo.mover.main.helper
Class PermissionsHelper
java.lang.Object
de.elo.mover.main.helper.PermissionsHelper
public class PermissionsHelper
extends java.lang.Object
Überschrift: PermissionsHelper.
Beschreibung: Hilfsklasse für Berechtigungsoperationen.
Copyright: Copyright (c) ELO Digital Office GmbH 2018 - 2021
-
Constructor Summary
Constructors Constructor Description PermissionsHelper() -
Method Summary
Modifier and Type Method Description static voidassignAclToSubtree(IXconnect ixConnect, int objId, java.lang.String newAcl)Vererbt die Berechtigungen an dem angegebenen Eintrag.static booleancanChangePermissions(int access)Prüft, ob das Recht "Berechtigungen ändern" vorhanden ist.static booleancanChangeWorkspace(int access)Meldet zurück, ob das Recht "Workspace ändern" vorhanden ist.static booleancanDelete(int access)Prüft, ob das Recht "Löschen" vorhanden ist.static booleancanEdit(int access)Prüft, ob das Recht "Dokument bearbeiten" vorhanden ist.static booleancanEverything(int access)Prüft, ob alle Rechte (RWDELX) in den angegebenen Flags vorhanden sind.static booleancanList(int access)Prüft, ob das Recht "Listen bearbeiten" vorhanden ist.static booleancanRead(int access)Prüft, ob das Recht "Lesen" in den angegebenen Flags vorhanden ist.static booleancanWrite(int access)Prüft, ob das Recht "Schreiben" vorhanden ist.static de.elo.ix.client.AclItem[]cloneAclItems(de.elo.ix.client.AclItem[] origAclItems)Liefert eine Liste mit den kopierten Berechtigungen zurück.static de.elo.ix.client.AclItem[]createAclItemList(IXconnect ixConnect)Erzeugt eine Liste mit einem Default "AclItem"-Eintrag.static de.elo.ix.client.CryptInfocreateCryptInfo(IXconnect ixConnect, int id, java.lang.String name, java.lang.String password, java.lang.String keyInfo)Erzeugt ein "CryptInfo"-Objekt mit den angegebenen Daten.static intgetAccess(java.lang.String rights)Liefert den Berechtigungswert für die angegebenen Berechtigung-Flags zurück.static java.lang.StringgetAclItemRights(de.elo.ix.client.AclItem aclItem)Liefert einen String mit den vorhandenen Rechten zurück.static de.elo.ix.client.AclItem[]getAclItemsFromString(IXconnect ixConnect, java.lang.String aclDescr)Erzeugt ein AclItem-Array aus der String-Darstellung der ACL.static java.lang.StringgetAclItemsRights(de.elo.ix.client.AclItem[] aclItems)Liefert eine Liste mit den Beschreibungen der angegebenen Berechtigungen zurück.static de.elo.ix.client.ValueClass[]getAndGroups(de.elo.ix.client.AclItem[] aclItems)Liefert eine Liste mit den UND-Gruppen zurück.static java.util.ArrayList<de.elo.ix.client.AclItem>getArrayList(de.elo.ix.client.AclItem[] aclItems)Liefert ein "ArrayList"-Objekt aus der angegebenen Liste mit Berechtigungen zurück.static java.lang.StringgetDiffAcls(IXconnect ixConnect, de.elo.ix.client.AclItem[] firstAclItems, de.elo.ix.client.AclItem[] secAclItems)Liefert den Berechtigungsunterschied als String zurück.static java.lang.StringgetDiffAcls(IXconnect ixConnect, de.elo.ix.client.Sord firstSord, de.elo.ix.client.Sord secondSord)Liefert den Berechtigungsunterschied als String zurück.static java.util.ArrayList<de.elo.ix.client.AclItem[]>getPermissions(IXconnect ixConnect, int parentId)Liefert eine Liste mit den vorhandenen Berechtigungen des angegebenen Ordners zurück.static java.lang.StringgetRightName(int accessC)Liefert die Bezeichnung des angegebenen Berechtigungsflags zurück.static java.lang.StringgetStringFromAclItems(IXconnect ixConnect, de.elo.ix.client.AclItem[] aclItems)Liefert die Textdarstellung für die angegebene Liste mit Berechtigungen zurück.static de.elo.ix.client.UserName[]getUserNames(IXconnect ixConnect, int groupId)Liefert die Mitglieder der angegeben Gruppe zurück.static de.elo.ix.client.UserName[]getUserNames(IXconnect ixConnect, java.lang.String groupName)Liefert die Mitglieder der angegebenen Gruppe zurück.static booleanhasAccessRights(IXconnect ixConnect, java.lang.String sordId, int userId, int expectRights)Meldet zurück, ob der Eintrag die angegebenen Berechtigungen besitzt.static booleanhasAddFolderRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender neue Ordner hinzufügen darf.static booleanhasAdminRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Administrationsrechte besitzt.static booleanhasChangeMaskRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender den Maskentyp nachträglich verändern darf.static booleanhasChangePermissionsRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Berechtigungen ändern darf.static booleanhasDeleteDocumentsRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumente löschen darf.static booleanhasDeleteDocVersionsRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumentversionen löschen darf.static booleanhasDeleteStructuresRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Ordner löschen darf.static booleanhasEditArchiveRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Benutzer das Repository bearbeiten darf.static booleanhasEditDocumentRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumente bearbeiten darf.static booleanhasEditScriptRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Skripte bearbeiten darf.static booleanhasEditWorkflowRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Workflows bearbeiten darf.static booleanhasExportRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumente exportieren darf.static booleanhasFulltextLicense(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender eine Volltext Lizenz besitzt.static booleanhasImportRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumente importieren darf.static booleanhasRight(IXconnect ixConnect, int flag)Meldet zurück, ob das angegebene Benutzerrecht vorhanden ist.static booleanhasShowDocumentRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Dokumente sehen darf.static booleanhasStartWorkflowRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Workflows starten kann.static booleanhasSubAdminRight(IXconnect ixConnect)Meldet zurück, ob der aktuell angemeldete Anwender Subadmin-Rechte hat.static booleanisIsearchFulltext(IXconnect ixConnect)Meldet zurück, ob der ISearch Fulltext aktiviert wurde.static booleanisSet(int accessFlag, de.elo.ix.client.AclItem aclItem)Meldet zurück, ob das entsprechende Flag gesetzt ist.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
PermissionsHelper
public PermissionsHelper()
-
-
Method Details
-
getUserNames
public static de.elo.ix.client.UserName[] getUserNames(IXconnect ixConnect, int groupId) throws java.lang.ExceptionLiefert die Mitglieder der angegeben Gruppe zurück.- Parameters:
ixConnect- Indexserver-VerbindunggroupId- ID der Gruppe- Returns:
- Mitglieder der Gruppe
- Throws:
java.lang.Exception
-
getUserNames
public static de.elo.ix.client.UserName[] getUserNames(IXconnect ixConnect, java.lang.String groupName) throws java.lang.ExceptionLiefert die Mitglieder der angegebenen Gruppe zurück.- Parameters:
ixConnect- Indexserver-VerbindunggroupName- Name der Gruppe- Returns:
- Mitglieder der Gruppe
- Throws:
java.lang.Exception
-
canRead
public static boolean canRead(int access) throws java.lang.ExceptionPrüft, ob das Recht "Lesen" in den angegebenen Flags vorhanden ist.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Lesen" ist vorhanden
- Throws:
java.lang.Exception
-
canWrite
public static boolean canWrite(int access) throws java.lang.ExceptionPrüft, ob das Recht "Schreiben" vorhanden ist. Dies ist bei einem Dokument für das Schreiben der Metadaten vorgesehen.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Schreiben" ist vorhanden
- Throws:
java.lang.Exception
-
canDelete
public static boolean canDelete(int access) throws java.lang.ExceptionPrüft, ob das Recht "Löschen" vorhanden ist.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Löschen" ist vorhanden
- Throws:
java.lang.Exception
-
canEdit
public static boolean canEdit(int access) throws java.lang.ExceptionPrüft, ob das Recht "Dokument bearbeiten" vorhanden ist. Dies ist bei Dokumenten für das Aus-/Einchecken vorgesehen.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Dokument bearbeiten" ist vorhanden
- Throws:
java.lang.Exception
-
canList
public static boolean canList(int access) throws java.lang.ExceptionPrüft, ob das Recht "Listen bearbeiten" vorhanden ist. Dies ist für das Anlegen von neuen Elementen in einem Ordner vorgesehen.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Listen bearbeiten" ist vorhanden
- Throws:
java.lang.Exception
-
canChangePermissions
public static boolean canChangePermissions(int access) throws java.lang.ExceptionPrüft, ob das Recht "Berechtigungen ändern" vorhanden ist.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Berechtigungen ändern" ist vorhanden
- Throws:
java.lang.Exception
-
canChangeWorkspace
public static boolean canChangeWorkspace(int access) throws java.lang.ExceptionMeldet zurück, ob das Recht "Workspace ändern" vorhanden ist.- Parameters:
access- Berechtigungsflags- Returns:
- Das Recht "Workspace ändern" ist vorhanden
- Throws:
java.lang.Exception
-
canEverything
public static boolean canEverything(int access) throws java.lang.ExceptionPrüft, ob alle Rechte (RWDELX) in den angegebenen Flags vorhanden sind.- Parameters:
access- Berechtigungsflags- Returns:
- Alle Rechte (RWDELX) sind vorhanden
- Throws:
java.lang.Exception
-
getAclItemRights
public static java.lang.String getAclItemRights(de.elo.ix.client.AclItem aclItem) throws java.lang.ExceptionLiefert einen String mit den vorhandenen Rechten zurück.- Parameters:
aclItem- Berechtigung- Returns:
- String mit den vorhandenen Rechten
- Throws:
java.lang.Exception
-
getAclItemsRights
public static java.lang.String getAclItemsRights(de.elo.ix.client.AclItem[] aclItems) throws java.lang.ExceptionLiefert eine Liste mit den Beschreibungen der angegebenen Berechtigungen zurück.- Parameters:
aclItems- Liste mit Berechtigungen- Returns:
- Liste mit den Beschreibungen
- Throws:
java.lang.Exception
-
getAccess
public static int getAccess(java.lang.String rights) throws java.lang.ExceptionLiefert den Berechtigungswert für die angegebenen Berechtigung-Flags zurück.- Parameters:
rights- Berechtigung-Flags- Returns:
- Berechtigungswert
- Throws:
java.lang.Exception
-
isSet
public static boolean isSet(int accessFlag, de.elo.ix.client.AclItem aclItem) throws java.lang.ExceptionMeldet zurück, ob das entsprechende Flag gesetzt ist.- Parameters:
accessFlag- FlagaclItem- Berechtigung- Returns:
- Flag ist gesetzt
- Throws:
java.lang.Exception
-
getStringFromAclItems
public static java.lang.String getStringFromAclItems(IXconnect ixConnect, de.elo.ix.client.AclItem[] aclItems) throws java.lang.ExceptionLiefert die Textdarstellung für die angegebene Liste mit Berechtigungen zurück.- Parameters:
ixConnect- Indexserver-VerbindungaclItems- Liste mit Berechtigungen- Returns:
- Textdarstellung der Berechtigungseinstellung
- Throws:
java.lang.Exception
-
getAclItemsFromString
public static de.elo.ix.client.AclItem[] getAclItemsFromString(IXconnect ixConnect, java.lang.String aclDescr) throws java.lang.ExceptionErzeugt ein AclItem-Array aus der String-Darstellung der ACL.- Parameters:
ixConnect- Indexserver-VerbindungaclDescr- Textdarstellung der Berechtigungen- Returns:
- Liste mit AclItem-Objekten
- Throws:
java.lang.Exception
-
getAndGroups
public static de.elo.ix.client.ValueClass[] getAndGroups(de.elo.ix.client.AclItem[] aclItems) throws java.lang.ExceptionLiefert eine Liste mit den UND-Gruppen zurück.- Parameters:
aclItems- Liste mit Berechtigungen- Returns:
- Liste mit UND-Gruppen
- Throws:
java.lang.Exception
-
assignAclToSubtree
public static void assignAclToSubtree(IXconnect ixConnect, int objId, java.lang.String newAcl) throws java.lang.ExceptionVererbt die Berechtigungen an dem angegebenen Eintrag.- Parameters:
ixConnect- Indexserver-VerbindungobjId- Id des EintragsnewAcl- Neue Berechtigungen- Throws:
java.lang.Exception
-
getDiffAcls
public static java.lang.String getDiffAcls(IXconnect ixConnect, de.elo.ix.client.Sord firstSord, de.elo.ix.client.Sord secondSord) throws java.lang.ExceptionLiefert den Berechtigungsunterschied als String zurück.- Parameters:
ixConnect- Indexserver-VerbindungfirstSord- Ester EintragsecondSord- Zweiter Eintrag- Returns:
- Berechtigungsunterschied als String
- Throws:
java.lang.Exception
-
getDiffAcls
public static java.lang.String getDiffAcls(IXconnect ixConnect, de.elo.ix.client.AclItem[] firstAclItems, de.elo.ix.client.AclItem[] secAclItems) throws java.lang.ExceptionLiefert den Berechtigungsunterschied als String zurück.- Parameters:
ixConnect- Indexserver-VerbindungfirstAclItems- Erste BerechtigungensecAclItems- Andere Berechtugungen- Returns:
- Berechtigungsunterschied als String
- Throws:
java.lang.Exception
-
hasRight
Meldet zurück, ob das angegebene Benutzerrecht vorhanden ist.- Parameters:
ixConnect- Indexserver-Verbindungflag- Benutzerrecht- Returns:
- Benutzerrecht ist vorhanden
- Throws:
java.lang.Exception
-
hasAdminRight
Meldet zurück, ob der aktuell angemeldete Anwender Administrationsrechte besitzt.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Administrationsrechte besitzt
- Throws:
java.lang.Exception
-
hasSubAdminRight
Meldet zurück, ob der aktuell angemeldete Anwender Subadmin-Rechte hat.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Subadmin-Rechte hat
- Throws:
java.lang.Exception
-
hasEditArchiveRight
Meldet zurück, ob der aktuell angemeldete Benutzer das Repository bearbeiten darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Benutzer das Repository bearbeiten darf
- Throws:
java.lang.Exception
-
hasShowDocumentRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumente sehen darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Dokumente sehen darf
- Throws:
java.lang.Exception
-
hasChangeMaskRight
Meldet zurück, ob der aktuell angemeldete Anwender den Maskentyp nachträglich verändern darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender die Maske nachträglich verändern darf
- Throws:
java.lang.Exception
-
hasChangePermissionsRight
Meldet zurück, ob der aktuell angemeldete Anwender Berechtigungen ändern darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Berechtigungen ändern darf
- Throws:
java.lang.Exception
-
hasStartWorkflowRight
Meldet zurück, ob der aktuell angemeldete Anwender Workflows starten kann.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Workflows starten kann
- Throws:
java.lang.Exception
-
hasEditWorkflowRight
Meldet zurück, ob der aktuell angemeldete Anwender Workflows bearbeiten darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Workflows bearbeiten darf
- Throws:
java.lang.Exception
-
hasDeleteDocumentsRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumente löschen darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Dokumente löschen darf
- Throws:
java.lang.Exception
-
hasDeleteDocVersionsRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumentversionen löschen darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Dokumentversionen löschen darf
- Throws:
java.lang.Exception
-
hasDeleteStructuresRight
Meldet zurück, ob der aktuell angemeldete Anwender Ordner löschen darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Ordner löschen darf
- Throws:
java.lang.Exception
-
hasAddFolderRight
Meldet zurück, ob der aktuell angemeldete Anwender neue Ordner hinzufügen darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender neue Ordner hinzufügen darf
- Throws:
java.lang.Exception
-
hasEditDocumentRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumente bearbeiten darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der aktuell angemeldete Anwender Dokumente bearbeiten darf
- Throws:
java.lang.Exception
-
hasImportRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumente importieren darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Dokumente importieren darf
- Throws:
java.lang.Exception
-
hasExportRight
Meldet zurück, ob der aktuell angemeldete Anwender Dokumente exportieren darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Dokumente exportieren darf
- Throws:
java.lang.Exception
-
hasEditScriptRight
Meldet zurück, ob der aktuell angemeldete Anwender Skripte bearbeiten darf.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- True, falls der Anwender Skripte bearbeiten darf
- Throws:
java.lang.Exception
-
hasFulltextLicense
Meldet zurück, ob der aktuell angemeldete Anwender eine Volltext Lizenz besitzt.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- Volltext Lizenz vorhanden
- Throws:
java.lang.Exception
-
isIsearchFulltext
Meldet zurück, ob der ISearch Fulltext aktiviert wurde.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- ISearch ISearch Fulltext ist aktiv
- Throws:
java.lang.Exception
-
getPermissions
public static java.util.ArrayList<de.elo.ix.client.AclItem[]> getPermissions(IXconnect ixConnect, int parentId) throws java.lang.ExceptionLiefert eine Liste mit den vorhandenen Berechtigungen des angegebenen Ordners zurück.- Parameters:
ixConnect- Indexserver-VerbindungparentId- ID des Ordners- Returns:
- Liste mit den Berechtigungen
- Throws:
java.lang.Exception
-
cloneAclItems
public static de.elo.ix.client.AclItem[] cloneAclItems(de.elo.ix.client.AclItem[] origAclItems) throws java.lang.ExceptionLiefert eine Liste mit den kopierten Berechtigungen zurück.- Parameters:
origAclItems- Liste mit Berechtigungen- Returns:
- Neue Liste mit kopierten Berechtigungen
- Throws:
java.lang.Exception
-
createAclItemList
public static de.elo.ix.client.AclItem[] createAclItemList(IXconnect ixConnect) throws java.lang.ExceptionErzeugt eine Liste mit einem Default "AclItem"-Eintrag.- Parameters:
ixConnect- Indexserver-Verbindung- Returns:
- Liste mit einem Default "AclItem"-Eintrag
- Throws:
java.lang.Exception
-
createCryptInfo
public static de.elo.ix.client.CryptInfo createCryptInfo(IXconnect ixConnect, int id, java.lang.String name, java.lang.String password, java.lang.String keyInfo) throws java.lang.ExceptionErzeugt ein "CryptInfo"-Objekt mit den angegebenen Daten.- Parameters:
ixConnect- Indexserver-Verbindungid- ID des "CryptInfo"-Objektesname- Bezeichnung des "CryptInfo"-Objektespassword- Passwort des "CryptInfo"-ObjekteskeyInfo- KeyInfo- Returns:
- Neues "CryptInfo"-Objekt
- Throws:
java.lang.Exception
-
getArrayList
public static java.util.ArrayList<de.elo.ix.client.AclItem> getArrayList(de.elo.ix.client.AclItem[] aclItems)Liefert ein "ArrayList"-Objekt aus der angegebenen Liste mit Berechtigungen zurück.- Parameters:
aclItems- Liste mit Berechtigungen- Returns:
- ArrayList mit Berechtigungen
-
getRightName
public static java.lang.String getRightName(int accessC)Liefert die Bezeichnung des angegebenen Berechtigungsflags zurück.- Parameters:
accessC- Berechtigungsflag- Returns:
- Bezeichnung des Berechtigungsflags oder leeren String
-
hasAccessRights
public static boolean hasAccessRights(IXconnect ixConnect, java.lang.String sordId, int userId, int expectRights) throws java.lang.ExceptionMeldet zurück, ob der Eintrag die angegebenen Berechtigungen besitzt.- Parameters:
ixConnect- Indexserver-VerbindungsordId- ID/GUID des EintragsuserId- Benutzer IDexpectRights- Erwartete Berechtigungen- Returns:
- Eintrag hat die Berechtigungen
- Throws:
java.lang.Exception
-