|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.kuali.rice.kns.maintenance.KualiMaintainableImpl
org.kuali.kfs.sys.document.FinancialSystemMaintainable
org.kuali.kfs.sec.document.SecurityDefinitionMaintainableImpl
public class SecurityDefinitionMaintainableImpl
Maintainable implementation for the Security Definition maintenance document. Hooks into Post processing to create the KIM permissions from the definition records
| Field Summary |
|---|
| Fields inherited from class org.kuali.rice.kns.maintenance.KualiMaintainableImpl |
|---|
boClass, businessObject, businessObjectAuthorizationService, businessObjectDictionaryService, businessObjectMetaDataService, businessObjectService, dataDictionaryService, docTypeName, documentHelperService, documentNumber, encryptionService, inactiveRecordDisplay, maintenanceAction, maintenanceDocumentDictionaryService, maintenanceDocumentService, newCollectionLines, persistenceStructureService, personService |
| Constructor Summary | |
|---|---|
SecurityDefinitionMaintainableImpl()
|
|
| Method Summary | |
|---|---|
protected void |
createNewDocumentTypePermissions(String documentType,
boolean active,
SecurityDefinition newSecurityDefinition)
Checks the document restrict flags on the security definition and if true calls helper method to create a new permission |
protected void |
createOrUpdateDefinitionRole(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition)
Creates a new role for the definition (if the definition is new), then grants to the role any new permissions granted for the definition. |
protected void |
createOrUpdateDocumentPermissions(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
Iterates through the document types and creates any new document permissions necessary or updates old permissions setting inactive if needed |
protected void |
createOrUpdateDocumentTypePermission(String documentType,
boolean active,
SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
String templateId)
First tries to find an existing permission for the document type, template, and definition. |
protected void |
createOrUpdateDocumentTypePermissions(String documentType,
boolean active,
SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition)
For each of the document templates ids calls helper method to create or update corresponding permission |
protected void |
createOrUpdateInquiryPermissions(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
First tries to find inquiry permissions for GL namespace and LD namespace. |
protected void |
createOrUpdateLookupPermission(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
First tries to retrieve a lookup permission previously setup for this definition. |
void |
doRouteStatusChange(org.kuali.rice.kns.bo.DocumentHeader documentHeader)
|
protected org.kuali.rice.kim.bo.role.dto.KimPermissionInfo |
findDocumentPermission(SecurityDefinition securityDefinition,
String templateId,
String documentType)
Calls helper method to find all permissions for the given template ID and security defintion name (permission name). |
protected List<org.kuali.rice.kim.bo.role.dto.KimPermissionInfo> |
findSecurityPermissionsByNameAndTemplate(String permissionName,
String templateId)
Calls permission service to find all permissions for the given name. |
protected boolean |
isDocumentTypeInDefinition(String documentType,
SecurityDefinition oldSecurityDefinition)
Determines whether a given document type name is included in the document type list for the given security definition |
protected org.kuali.rice.kim.bo.types.dto.AttributeSet |
populateDocumentTypePermissionDetails(String documentType,
SecurityDefinition securityDefinition)
Builds an AttributeSet populated from the given method parameters. |
protected org.kuali.rice.kim.bo.types.dto.AttributeSet |
populateInquiryPermissionDetails(String namespaceCode,
SecurityDefinition securityDefinition)
Builds an AttributeSet populated from the given method parameters. |
protected org.kuali.rice.kim.bo.types.dto.AttributeSet |
populateLookupPermissionDetails(SecurityDefinition securityDefinition)
Builds an AttributeSet populated from the given method parameters. |
void |
processAfterCopy(org.kuali.rice.kns.document.MaintenanceDocument document,
Map<String,String[]> parameters)
Override to clear out KIM role id on copy |
void |
refresh(String refreshCaller,
Map fieldValues,
org.kuali.rice.kns.document.MaintenanceDocument document)
|
protected void |
savePermission(SecurityDefinition securityDefinition,
String permissionId,
String permissionTemplateId,
boolean active,
org.kuali.rice.kim.bo.types.dto.AttributeSet permissionDetails)
Calls PermissionUpdateService to save a permission. |
| Methods inherited from class org.kuali.kfs.sys.document.FinancialSystemMaintainable |
|---|
answerSplitNodeQuestion, populateChartOfAccountsCodeFields, processAfterPost, processBeforeAddLine, refreshReferences |
| Methods inherited from class org.kuali.rice.kns.maintenance.KualiMaintainableImpl |
|---|
addMultipleValueLookupResults, addNewLineToCollection, clearBusinessObjectOfRestrictedValues, clearCollectionRestrictedValues, clearFieldRestrictedValues, decryptEncryptedData, deleteBusinessObject, generateAllAffectedReferences, generateMaintenanceLocks, getAffectedReferencesFromLookup, getAllRefreshableReferences, getBoClass, getBusinessObject, getBusinessObjectAuthorizationService, getBusinessObjectDictionaryService, getBusinessObjectMetaDataService, getBusinessObjectService, getCoreSections, getCustomLockDescriptor, getDataDictionaryService, getDocumentHelperService, getDocumentTitle, getDocumentTypeName, getDuplicateIdentifierFieldsFromDataDictionary, getEncryptionService, getInactiveRecordDisplay, getLockingDocumentId, getMaintainableTitle, getMaintenanceAction, getMaintenanceDocumentDictionaryService, getMaintenanceDocumentService, getMultiValueIdentifierList, getNewCollectionLine, getPersistenceStructureService, getPersonService, getSections, getShowInactiveRecords, getWorkflowEngineDocumentIdsToLock, hasBusinessObjectExisted, initNewCollectionLine, isBoNotesEnabled, isExternalBusinessObject, isOldBusinessObjectInDocument, isRelationshipRefreshable, performCollectionForceUpperCase, performFieldForceUpperCase, performFieldForceUpperCase, performForceUpperCase, populateBusinessObject, populateNewCollectionLines, populateNewSubCollectionLines, prepareBusinessObject, prepareBusinessObjectForAdditionFromMultipleValueLookup, prepareForSave, processAfterAddLine, processAfterEdit, processAfterNew, processAfterRetrieve, saveBusinessObject, setBoClass, setBusinessObject, setDocumentNumber, setGenerateBlankRequiredValues, setGenerateDefaultValues, setMaintenanceAction, setNewCollectionLineDefaultValues, setShowInactiveRecords, setupNewFromExisting, shouldFieldBeEncrypted, useCustomLockDescriptors |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SecurityDefinitionMaintainableImpl()
| Method Detail |
|---|
public void refresh(String refreshCaller,
Map fieldValues,
org.kuali.rice.kns.document.MaintenanceDocument document)
refresh in interface org.kuali.rice.kns.maintenance.Maintainablerefresh in class org.kuali.rice.kns.maintenance.KualiMaintainableImplKualiMaintainableImpl.refresh(java.lang.String, java.util.Map, org.kuali.rice.kns.document.MaintenanceDocument)public void doRouteStatusChange(org.kuali.rice.kns.bo.DocumentHeader documentHeader)
doRouteStatusChange in interface org.kuali.rice.kns.maintenance.MaintainabledoRouteStatusChange in class org.kuali.rice.kns.maintenance.KualiMaintainableImplKualiMaintainableImpl.doRouteStatusChange(org.kuali.rice.kns.bo.DocumentHeader)
protected void createOrUpdateDefinitionRole(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition)
oldSecurityDefinition - SecurityDefinition record before updatesnewSecurityDefinition - SecurityDefinition after updates
protected void createOrUpdateDocumentPermissions(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
oldSecurityDefinition - SecurityDefiniton record before requested changes (old side of maintenance document)newSecurityDefinition - SecurityDefinition record with requested changes (new side of maintenance document)newMaintenanceAction - Indicates whether this is a new maintenance record (old side in empty)
protected void createOrUpdateLookupPermission(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
oldSecurityDefinition - SecurityDefiniton record before requested changes (old side of maintenance document)newSecurityDefinition - SecurityDefinition record with requested changes (new side of maintenance document)newMaintenanceAction - Indicates whether this is a new maintenance record (old side in empty)
protected void createOrUpdateInquiryPermissions(SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
boolean newMaintenanceAction)
oldSecurityDefinition - SecurityDefiniton record before requested changes (old side of maintenance document)newSecurityDefinition - SecurityDefinition record with requested changes (new side of maintenance document)newMaintenanceAction - Indicates whether this is a new maintenance record (old side in empty)
protected void createNewDocumentTypePermissions(String documentType,
boolean active,
SecurityDefinition newSecurityDefinition)
documentType - workflow document type name for permission detailactive - boolean indicating whether the permissions should be set to active (true) or non-active (false)newSecurityDefinition - SecurityDefintion which contains values for the permissions
protected void createOrUpdateDocumentTypePermissions(String documentType,
boolean active,
SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition)
documentType - workflow document type name for permission detailactive - boolean indicating whether the permissions should be set to active (true) or non-active (false)oldSecurityDefinition - SecurityDefiniton record before requested changes (old side of maintenance document)newSecurityDefinition - SecurityDefinition record with requested changes (new side of maintenance document)
protected void createOrUpdateDocumentTypePermission(String documentType,
boolean active,
SecurityDefinition oldSecurityDefinition,
SecurityDefinition newSecurityDefinition,
String templateId)
documentType - workflow document type name for permission detailactive - boolean indicating whether the permissions should be set to active (true) or non-active (false)oldSecurityDefinition - SecurityDefiniton record before requested changes (old side of maintenance document)newSecurityDefinition - SecurityDefinition record with requested changes (new side of maintenance document)templateId - KIM template id for the permission record that is should be created or updated
protected org.kuali.rice.kim.bo.types.dto.AttributeSet populateDocumentTypePermissionDetails(String documentType,
SecurityDefinition securityDefinition)
documentType - workflow document type namesecurityDefinition - SecurityDefiniton record
protected org.kuali.rice.kim.bo.types.dto.AttributeSet populateLookupPermissionDetails(SecurityDefinition securityDefinition)
securityDefinition - SecurityDefiniton record
protected org.kuali.rice.kim.bo.types.dto.AttributeSet populateInquiryPermissionDetails(String namespaceCode,
SecurityDefinition securityDefinition)
namespaceCode - KIM namespace codesecurityDefinition - SecurityDefiniton record
protected org.kuali.rice.kim.bo.role.dto.KimPermissionInfo findDocumentPermission(SecurityDefinition securityDefinition,
String templateId,
String documentType)
securityDefinition - SecurityDefiniton record for permissiontemplateId - KIM template ID for permissiondocumentType - KEW document type name for permission detail
protected List<org.kuali.rice.kim.bo.role.dto.KimPermissionInfo> findSecurityPermissionsByNameAndTemplate(String permissionName,
String templateId)
permissionName - name of permission to findtemplateId - KIM template ID of permission to find
org.kuali.rice.kim.service.PermissionService#getPermissionsByName()
protected boolean isDocumentTypeInDefinition(String documentType,
SecurityDefinition oldSecurityDefinition)
documentType - KEW document type nameoldSecurityDefinition - SecurityDefinition record
protected void savePermission(SecurityDefinition securityDefinition,
String permissionId,
String permissionTemplateId,
boolean active,
org.kuali.rice.kim.bo.types.dto.AttributeSet permissionDetails)
securityDefinition - SecurityDefinition recordpermissionId - ID for the permission being saved, or empty for new permissionpermissionTemplateId - KIM template ID for permission to saveactive - boolean indicating whether the permission should be set to active (true) or non-active (false)permissionDetails - AttributeSet representing the permission detailsorg.kuali.rice.kim.service.PermissionUpdateService#savePermission()
public void processAfterCopy(org.kuali.rice.kns.document.MaintenanceDocument document,
Map<String,String[]> parameters)
processAfterCopy in interface org.kuali.rice.kns.maintenance.MaintainableprocessAfterCopy in class org.kuali.rice.kns.maintenance.KualiMaintainableImplKualiMaintainableImpl.processAfterCopy(org.kuali.rice.kns.document.MaintenanceDocument,
java.util.Map)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||