use of org.kuali.kfs.kim.framework.type.KimTypeService in project cu-kfs by CU-CommunityApps.
the class RoleServiceImpl method getDelegationTypeService.
protected DelegationTypeService getDelegationTypeService(String delegationId) {
DelegationTypeService service = null;
DelegateType delegateType = getKimDelegationImpl(delegationId);
KimType kimType = KimApiServiceLocator.getKimTypeInfoService().getKimType(delegateType.getKimTypeId());
if (kimType != null) {
KimTypeService tempService = KimFrameworkServiceLocator.getKimTypeService(kimType);
if (tempService instanceof DelegationTypeService) {
service = (DelegationTypeService) tempService;
} else {
LOG.error("Service returned for type " + kimType + "(" + kimType.getName() + ") was not a DelegationTypeService. Was a " + (tempService != null ? tempService.getClass() : "(null)"));
}
} else {
// delegateType has no type - default to role type if possible
RoleTypeService roleTypeService = getRoleTypeService(delegateType.getRoleId());
if (roleTypeService instanceof DelegationTypeService) {
service = (DelegationTypeService) roleTypeService;
}
}
return service;
}
use of org.kuali.kfs.kim.framework.type.KimTypeService in project cu-kfs by CU-CommunityApps.
the class SecurityRequestDocumentRule method validateQualification.
protected boolean validateQualification(KimType typeInfo, SecurityRequestRoleQualification requestRoleQualification, String fieldKeyPrefix) {
boolean success = true;
KimTypeService kimTypeService = KimFrameworkServiceLocator.getKimTypeService(typeInfo);
try {
List<AttributeError> attributeErrors = kimTypeService.validateAttributes(typeInfo.getId(), requestRoleQualification.buildQualificationAttributeSet());
if (!attributeErrors.isEmpty()) {
success = false;
}
for (AttributeError entry : attributeErrors) {
String attributeName = entry.getAttributeName();
int qualificationDetailIndex = findQualificationRecordForAttribute(requestRoleQualification.getRoleQualificationDetails(), attributeName);
String fieldKey = fieldKeyPrefix + KSRPropertyConstants.SECURITY_REQUEST_DOC_ROLE_QUAL_DETAILS + "[" + qualificationDetailIndex + "]." + KSRPropertyConstants.SECURITY_REQUEST_DOC_ROLE_ATTR_VALUE;
String attributeError = entry.getMessage();
String messageKey = StringUtils.substringBefore(attributeError, ":");
String messageParameter = StringUtils.substringAfter(attributeError, ":");
GlobalVariables.getMessageMap().putError(fieldKey, messageKey, messageParameter);
}
} catch (Exception e) {
String input = KRADConstants.DOCUMENT_PROPERTY_NAME + "." + KRADConstants.DOCUMENT_HEADER_PROPERTY_NAME;
GlobalVariables.getMessageMap().putInfo(input, KSRKeyConstants.ERROR_SECURITY_REQUEST_DOC_SERVICE_EXCEPTION, new String[] { "SOME FILLER TEXT" });
}
return success;
}
use of org.kuali.kfs.kim.framework.type.KimTypeService in project cu-kfs by CU-CommunityApps.
the class SecurityProvisioningGroupRule method validateSecurityProvisioningGroup.
@SuppressWarnings("deprecation")
private boolean validateSecurityProvisioningGroup(MaintenanceDocument document, SecurityProvisioningGroup securityProvisioningGroup, int index) {
boolean success = true;
RoleLite role = StringUtils.isBlank(securityProvisioningGroup.getRoleId()) ? null : getRoleService().getRoleWithoutMembers(securityProvisioningGroup.getRoleId());
if (role != null) {
KimType kimType = getKimTypeInfoService().getKimType(role.getKimTypeId());
KimTypeService kimTypeService = getKimTypeService(kimType);
if (kimTypeService != null && kimTypeService instanceof org.kuali.kfs.kns.kim.role.DerivedRoleTypeServiceBase) {
success = false;
String errorPath = (index < 0) ? KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_ROLE_NAME : buildPropertyPath(buildIndexedProperty(KSRConstants.SECURITY_PROVISIONING_GROUPS, index), KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_ROLE_NAME);
GlobalVariables.getMessageMap().putError(errorPath, KSRKeyConstants.ERROR_SECURITY_PROVISIONING_GROUP_ROLE_DERIVED, getRoleNameForErrorMessage(securityProvisioningGroup.getRole()));
}
}
if (success) {
// check second against last.
if (StringUtils.isNotBlank(securityProvisioningGroup.getDistributedAuthorizerRoleId())) {
if (StringUtils.isNotBlank(securityProvisioningGroup.getAdditionalAuthorizerRoleId())) {
if (securityProvisioningGroup.getDistributedAuthorizerRoleId().equals(securityProvisioningGroup.getAdditionalAuthorizerRoleId())) {
success = false;
String errorPath = (index < 0) ? KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_ADD_AUTH_ROLE_ID : buildPropertyPath(buildIndexedProperty(KSRConstants.SECURITY_PROVISIONING_GROUPS, index), KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_ADD_AUTH_ROLE_ID);
GlobalVariables.getMessageMap().putError(errorPath, KSRKeyConstants.ERROR_SECURITY_PROVISIONING_GROUP_AUTH_UNIQUE, new String[] { KSRConstants.SECURITY_PROVISIONING_GROUP_ADD_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_DIST_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_LBL });
}
}
if (StringUtils.isNotBlank(securityProvisioningGroup.getCentralAuthorizerRoleId())) {
if (securityProvisioningGroup.getDistributedAuthorizerRoleId().equals(securityProvisioningGroup.getCentralAuthorizerRoleId())) {
success = false;
String errorPath = (index < 0) ? KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_ROLE_ID : buildPropertyPath(buildIndexedProperty(KSRConstants.SECURITY_PROVISIONING_GROUPS, index), KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_ROLE_ID);
GlobalVariables.getMessageMap().putError(errorPath, KSRKeyConstants.ERROR_SECURITY_PROVISIONING_GROUP_AUTH_UNIQUE, new String[] { KSRConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_DIST_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_ADD_AUTH_LBL });
}
}
}
if (StringUtils.isNotBlank(securityProvisioningGroup.getAdditionalAuthorizerRoleId())) {
if (StringUtils.isNotBlank(securityProvisioningGroup.getCentralAuthorizerRoleId())) {
if (securityProvisioningGroup.getAdditionalAuthorizerRoleId().equals(securityProvisioningGroup.getCentralAuthorizerRoleId())) {
success = false;
String errorPath = (index < 0) ? KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_ROLE_ID : buildPropertyPath(buildIndexedProperty(KSRConstants.SECURITY_PROVISIONING_GROUPS, index), KSRPropertyConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_ROLE_ID);
GlobalVariables.getMessageMap().putError(errorPath, KSRKeyConstants.ERROR_SECURITY_PROVISIONING_GROUP_AUTH_UNIQUE, new String[] { KSRConstants.SECURITY_PROVISIONING_GROUP_CENT_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_DIST_AUTH_LBL, KSRConstants.SECURITY_PROVISIONING_GROUP_ADD_AUTH_LBL });
}
}
}
}
SecurityProvisioning securityProvisioning = (SecurityProvisioning) document.getDocumentDataObject();
List<SecurityProvisioningGroup> securityProvisioningGroupList = securityProvisioning.getSecurityProvisioningGroups();
for (int i = 0; i < securityProvisioningGroupList.size(); i++) {
if (i == index) {
continue;
}
if (securityProvisioningGroup.getTabId() == null) {
break;
}
if (securityProvisioningGroup.getTabId().equals(securityProvisioningGroupList.get(i).getTabId())) {
if (securityProvisioningGroup.getRoleTabOrder() != null && securityProvisioningGroup.getRoleTabOrder().equals(securityProvisioningGroupList.get(i).getRoleTabOrder())) {
success = false;
String errorPath = (index < 0) ? KSRPropertyConstants.PROVISIONING_ROLE_TAB_ORDER : buildPropertyPath(buildIndexedProperty(KSRConstants.SECURITY_PROVISIONING_GROUPS, index), KSRPropertyConstants.PROVISIONING_ROLE_TAB_ORDER);
GlobalVariables.getMessageMap().putError(errorPath, KSRKeyConstants.ERROR_SECURITY_PROVISIONING_GROUP_TAB_ORDER_UNIQUE, getRoleNameForErrorMessage(securityProvisioningGroup.getRole()));
}
}
}
return success;
}
Aggregations