Class RbacUserType
java.lang.Object
com.evolveum.midpoint.ninja.action.mining.generator.context.RbacUserType
- All Implemented Interfaces:
RbacBasicStructure
- Direct Known Subclasses:
RbacObjectCategoryBuilder.Contractor,RbacObjectCategoryBuilder.IrregularUserType,RbacObjectCategoryBuilder.ManagerUserType,RbacObjectCategoryBuilder.RegularUserType,RbacObjectCategoryBuilder.SalesUserType,RbacObjectCategoryBuilder.SecurityOfficer,RbacObjectCategoryBuilder.SemiRegularUserType
This abstract class represents a user type generator used for initial user object RBAC generation.
Part of RBAC Testing Data, which provides testing data for role mining and other RBAC-related processes.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionThis method is responsible for building a UserType object with specific attributes.voidbuildAndImportObjects(@NotNull Log log, @NotNull com.evolveum.midpoint.repo.api.RepositoryService repository, @NotNull GeneratorOptions generatorOptions, int total, Set<String> names, @NotNull OperationResult result) This method is responsible for building and importing objects for a specific user type.abstract Stringabstract Stringprotected abstract Stringabstract StringgetLocationRole(boolean generateNew) abstract Stringabstract InitialBusinessRolegetPrimaryRole(boolean generateNew) abstract StringgetTitle()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.ninja.action.mining.generator.context.RbacBasicStructure
additionalChanges
-
Field Details
-
generatorOptions
-
-
Constructor Details
-
RbacUserType
-
-
Method Details
-
build
This method is responsible for building a UserType object with specific attributes. It sets up the archetype for the user and adds assignments such as organization and roles. It also sets the locality and title for the user if they are not null. If there are any PlanktonApplicationRoles, it adds them to the user's assignments.- Parameters:
user- The UserType object to be built.- Returns:
- The built UserType object with specific attributes.
-
buildAndImportObjects
public void buildAndImportObjects(@NotNull @NotNull Log log, @NotNull @NotNull com.evolveum.midpoint.repo.api.RepositoryService repository, @NotNull @NotNull GeneratorOptions generatorOptions, int total, Set<String> names, @NotNull @NotNull OperationResult result) This method is responsible for building and importing objects for a specific user type. It logs the progress of the import operation and uses the build() method to construct each user. After building a user, it imports the user and resolves auxiliary roles.- Specified by:
buildAndImportObjectsin interfaceRbacBasicStructure- Parameters:
log- The logger used to log the progress of the import operation.repository- The repository service used to import the user and resolve auxiliary roles.generatorOptions- The options for the generator, used in the importUserAndResolveAuxRoles method.total- The total number of users to be imported.names- A set of names to be used for the users. A name is selected from this set for each user.result- The operation result, used in the importUserAndResolveAuxRoles method.
-
getBirthRole
- Specified by:
getBirthRolein interfaceRbacBasicStructure
-
getOrganizationOid
- Specified by:
getOrganizationOidin interfaceRbacBasicStructure
-
getCorrespondingArchetypeOid
- Specified by:
getCorrespondingArchetypeOidin interfaceRbacBasicStructure
-
getPrimaryRole
- Specified by:
getPrimaryRolein interfaceRbacBasicStructure
-
getLocationRole
public abstract InitialObjectsDefinition.LocationInitialBusinessRole getLocationRole(boolean generateNew) - Specified by:
getLocationRolein interfaceRbacBasicStructure
-
getPlanktonApplicationRoles
public abstract List<InitialObjectsDefinition.PlanktonApplicationBusinessAbstractRole> getPlanktonApplicationRoles()- Specified by:
getPlanktonApplicationRolesin interfaceRbacBasicStructure
-
getLocality
- Specified by:
getLocalityin interfaceRbacBasicStructure
-
getTitle
- Specified by:
getTitlein interfaceRbacBasicStructure
-
getDisplayName
-