protected String getPersonInquiryUrlLink(Person user, String linkBody) { StringBuffer urlBuffer = new StringBuffer(); if(user != null && StringUtils.isNotEmpty(linkBody) ) { ModuleService moduleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(Person.class); Map<String, String[]> parameters = new HashMap<String, String[]>(); parameters.put(KimConstants.AttributeConstants.PRINCIPAL_ID, new String[] { user.getPrincipalId() }); String inquiryUrl = moduleService.getExternalizableBusinessObjectInquiryUrl(Person.class, parameters); if(!StringUtils.equals(KimConstants.EntityTypes.SYSTEM, user.getEntityTypeCode())){ urlBuffer.append("<a href='"); urlBuffer.append(inquiryUrl); urlBuffer.append("' "); urlBuffer.append("target='_blank'"); urlBuffer.append("title='Person Inquiry'>"); urlBuffer.append(linkBody); urlBuffer.append("</a>"); } else{ urlBuffer.append(linkBody); } } return urlBuffer.toString(); }
/** * Gets the alt keys for a class. Will not return null but and empty list if no keys exist. * * @param clazz the class. * @return the alt keys */ private List<List<String>> getAltkeys(Class<?> clazz) { final KualiModuleService kualiModuleService = KRADServiceLocatorWeb.getKualiModuleService(); final ModuleService moduleService = kualiModuleService.getResponsibleModuleService(clazz); List<List<String>> altKeys = null; if (moduleService != null) { altKeys = moduleService.listAlternatePrimaryKeyFieldNames(clazz); } return altKeys != null ? altKeys : new ArrayList<List<String>>(); }
@Override protected String getPersonInquiryUrlLink(Person user, String linkBody) { StringBuffer urlBuffer = new StringBuffer(); if(user != null && StringUtils.isNotEmpty(linkBody) ) { ModuleService moduleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(Person.class); Map<String, String[]> parameters = new HashMap<String, String[]>(); parameters.put(KimConstants.AttributeConstants.PRINCIPAL_ID, new String[] { user.getPrincipalId() }); String inquiryUrl = moduleService.getExternalizableBusinessObjectInquiryUrl(Person.class, parameters); if(!StringUtils.equals(KimConstants.EntityTypes.SYSTEM, user.getEntityTypeCode())){ urlBuffer.append("<a href='"); urlBuffer.append(inquiryUrl); urlBuffer.append("' "); urlBuffer.append("target='_blank'"); urlBuffer.append("title='Person Inquiry'>"); urlBuffer.append(linkBody); urlBuffer.append("</a>"); // Added re: KPME-207 (https://jira.kuali.org/browse/KPME-207) urlBuffer.append(" ("); urlBuffer.append(user.getName()); urlBuffer.append(")"); } else{ urlBuffer.append(linkBody); } } return urlBuffer.toString(); }
/** * This method safely creates a object from a class * Convenience method to create new object and throw a runtime exception if it cannot * If the class is an {@link ExternalizableBusinessObject}, this method will determine the interface for the EBO and * query the * appropriate module service to create a new instance. * * @param clazz * @return a newInstance() of clazz */ public static Object createNewObjectFromClass(Class clazz) { if (clazz == null) { throw new RuntimeException("BO class was passed in as null"); } try { if (ExternalizableBusinessObject.class.isAssignableFrom(clazz)) { Class eboInterface = ExternalizableBusinessObjectUtils.determineExternalizableBusinessObjectSubInterface(clazz); ModuleService moduleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService( eboInterface); return moduleService.createNewObjectFromExternalizableClass(eboInterface); } else { return clazz.newInstance(); } } catch (Exception e) { throw new RuntimeException("Error occured while trying to create a new instance for class " + clazz, e); } }
private CriteriaLookupDao getDao(Class clazz) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(clazz); if (moduleService != null) { ModuleConfiguration moduleConfig = moduleService.getModuleConfiguration(); String dataSourceName = ""; if (moduleConfig != null) { dataSourceName = moduleConfig.getDataSourceName(); } if (StringUtils.isNotEmpty(dataSourceName)) { if (lookupDaoValues.get(dataSourceName) != null) { return lookupDaoValues.get(dataSourceName); } else { CriteriaLookupDaoOjb classSpecificLookupDaoOjb = new CriteriaLookupDaoOjb(); classSpecificLookupDaoOjb.setJcdAlias(dataSourceName); lookupDaoValues.put(dataSourceName, classSpecificLookupDaoOjb); return classSpecificLookupDaoOjb; } } } return criteriaLookupDaoOjb; }
private PersistenceDao getDao(Class clazz) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(clazz); if (moduleService != null) { ModuleConfiguration moduleConfig = moduleService.getModuleConfiguration(); String dataSourceName = ""; if (moduleConfig != null) { dataSourceName = moduleConfig.getDataSourceName(); } if (StringUtils.isNotEmpty(dataSourceName)) { if (persistenceDaoValues.get(dataSourceName) != null) { return persistenceDaoValues.get(dataSourceName); } else { //using OJB PersistenceDaoOjb persistDaoOjb = new PersistenceDaoOjb(); persistDaoOjb.setJcdAlias(dataSourceName); persistenceDaoValues.put(dataSourceName, persistDaoOjb); return persistDaoOjb; } } } return persistenceDaoOjb; }
BusinessObject obj = null; try { ModuleService moduleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService( businessObjectClass); if (moduleService != null && moduleService.isExternalizable(businessObjectClass)) {
/** * @see org.kuali.rice.krad.service.KeyValuesService#findAll(java.lang.Class) */ @Override public <T> Collection<T> findAll(Class<T> clazz) { ModuleService responsibleModuleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(clazz); if(responsibleModuleService!=null && responsibleModuleService.isExternalizable(clazz)){ return (Collection<T>) responsibleModuleService.getExternalizableBusinessObjectsList((Class<ExternalizableBusinessObject>) clazz, Collections.<String, Object>emptyMap()); } if (containsActiveIndicator(clazz)) { return KRADServiceLocatorWeb.getLegacyDataAdapter().findMatching(clazz, Collections.singletonMap(CoreConstants.CommonElements.ACTIVE, true)); } if (LOG.isDebugEnabled()) { LOG.debug("Active indicator not found for class " + clazz.getName()); } return KRADServiceLocatorWeb.getLegacyDataAdapter().findAll(clazz); }
private BusinessObjectDao getDao(Class clazz) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(clazz); if (moduleService != null) { ModuleConfiguration moduleConfig = moduleService.getModuleConfiguration(); String dataSourceName = ""; if (moduleConfig != null) { dataSourceName = moduleConfig.getDataSourceName(); } if (StringUtils.isNotEmpty(dataSourceName)) { if (boDaoValues.get(dataSourceName) != null) { return boDaoValues.get(dataSourceName); } else { //using OJB BusinessObjectDaoOjb boDaoOjb = new BusinessObjectDaoOjb( KNSServiceLocator.getPersistenceStructureService()); boDaoOjb.setJcdAlias(dataSourceName); // add to our cache of bo daos boDaoValues.put(dataSourceName, boDaoOjb); return boDaoOjb; } } } return businessObjectDaoOjb; }
/** * @see org.kuali.rice.krad.service.PersistenceService#retrieveNonKeyFields(java.lang.Object) */ @Override public void retrieveNonKeyFields(Object persistableObject) { if (persistableObject != null && ExternalizableBusinessObjectUtils.isExternalizableBusinessObject(persistableObject.getClass())) { // // special handling for EBOs // Map<String, ?> criteria = KRADServiceLocatorWeb.getLegacyDataAdapter().getPrimaryKeyFieldValues(persistableObject); if (!CollectionUtils.isEmpty(criteria)) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(persistableObject.getClass()); if (moduleService != null) { Class<? extends ExternalizableBusinessObject> clazz = ExternalizableBusinessObjectUtils.determineExternalizableBusinessObjectSubInterface(persistableObject.getClass()); ExternalizableBusinessObject freshEbo = moduleService.getExternalizableBusinessObject(clazz, (Map<String, Object>)criteria); if (freshEbo != null) { BeanUtils.copyProperties(freshEbo, persistableObject); } } } } else { getService(persistableObject.getClass()).retrieveNonKeyFields(persistableObject); } }
private DocumentDao getDao(Class<? extends Document> clazz) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(clazz); if (moduleService != null) { ModuleConfiguration moduleConfig = moduleService.getModuleConfiguration(); String dataSourceName = ""; if (moduleConfig != null) { dataSourceName = moduleConfig.getDataSourceName(); } if (StringUtils.isNotEmpty(dataSourceName)) { if (documentDaoValues.get(dataSourceName) != null) { return documentDaoValues.get(dataSourceName); } //using OJB DocumentDaoOjb documentDaoOjbInstance = new DocumentDaoOjb( this.documentDaoOjb.getBusinessObjectDao(), this.documentDaoOjb.getDocumentAdHocService()); // set the data source alias documentDaoOjbInstance.setJcdAlias(dataSourceName); documentDaoValues.put(dataSourceName, documentDaoOjbInstance); return documentDaoOjbInstance; } } return documentDaoOjb; }
@SuppressWarnings("unchecked") @Override public List<String> listPrimaryKeyFieldNames(Class<?> type) { List<String> keys = new ArrayList<String>(); if ( type == null ) { return keys; } if (isPersistable(type)) { keys = persistenceStructureService.listPrimaryKeyFieldNames(type); } else { ModuleService responsibleModuleService = kualiModuleService.getResponsibleModuleService(type); if (responsibleModuleService != null && responsibleModuleService.isExternalizable(type)) { keys = responsibleModuleService.listPrimaryKeyFieldNames(type); } else { // check the Data Dictionary for PK's of non PBO/EBO DataObjectEntry dataObjectEntry = dataDictionaryService.getDataDictionary().getDataObjectEntry(type.getName()); if ( dataObjectEntry != null ) { List<String> pks = dataObjectEntry.getPrimaryKeys(); if (pks != null ) { keys = pks; } } else { LOG.warn( "Unable to retrieve data object entry for non-persistable KNS-managed class: " + type.getName() ); } } } return keys; }
/** * Gets an inquirable impl from the impl service name parameter. Then calls lookup service to retrieve the record from the * key/value parameters. Finally gets a list of Rows from the inquirable */ public ActionForward start(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { InquiryForm inquiryForm = (InquiryForm) form; if (inquiryForm.getBusinessObjectClassName() == null) { LOG.error("Business object name not given."); throw new RuntimeException("Business object name not given."); } Class boClass = Class.forName(inquiryForm.getBusinessObjectClassName()); ModuleService responsibleModuleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(boClass); if(responsibleModuleService!=null && responsibleModuleService.isExternalizable(boClass)){ String redirectUrl = responsibleModuleService.getExternalizableBusinessObjectInquiryUrl(boClass, (Map<String, String[]>) request.getParameterMap()); ActionForward redirectingActionForward = new RedirectingActionForward(redirectUrl); redirectingActionForward.setModule("/"); return redirectingActionForward; } return continueWithInquiry(mapping, form, request, response); }
@Override public List<String> listPrimaryKeyFieldNames(Class<?> clazz) { if (persistenceStructureService.isPersistable(clazz)) { return persistenceStructureService.listPrimaryKeyFieldNames(clazz); } ModuleService responsibleModuleService = getKualiModuleService().getResponsibleModuleService(clazz); if (responsibleModuleService != null && responsibleModuleService.isExternalizable(clazz)) { return responsibleModuleService.listPrimaryKeyFieldNames(clazz); } // check the Data Dictionary for PK's of non PBO/EBO List<String> pks = dataDictionaryService.getDataDictionary().getDataObjectEntry(clazz.getName()) .getPrimaryKeys(); if (pks != null && !pks.isEmpty()) { return pks; } return new ArrayList<String>(); }
ModuleService responsibleModuleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(referenceClass); if(responsibleModuleService!=null) { return responsibleModuleService.<ExternalizableBusinessObject>getExternalizableBusinessObject(referenceClass, pkMap);
if(StringUtils.isNotBlank(boClass)) { try { moduleService = getKualiModuleService().getResponsibleModuleService(Class.forName(boClass)); } catch (ClassNotFoundException classNotFoundException) { LOG.warn("BO class not found: " + boClass, classNotFoundException); moduleService = getKualiModuleService().getResponsibleModuleService(this.getClass());
.getKualiModuleService().getResponsibleModuleService( getDataObjectClass()); if (moduleService != null
ModuleService responsibleModuleService = getKualiModuleService().getResponsibleModuleService(boClass); if(responsibleModuleService!=null && responsibleModuleService.isExternalizable(boClass)){ Map<String, String> parameterMap = new HashMap<String, String>();
private LookupDao getDao(Class clazz) { ModuleService moduleService = getKualiModuleService().getResponsibleModuleService(clazz); if (moduleService != null) { ModuleConfiguration moduleConfig = moduleService.getModuleConfiguration(); String dataSourceName = ""; if (moduleConfig != null) { dataSourceName = moduleConfig.getDataSourceName(); } if (StringUtils.isNotEmpty(dataSourceName)) { if (lookupDaoValues.get(dataSourceName) != null) { return lookupDaoValues.get(dataSourceName); } else { LookupDaoOjb classSpecificLookupDaoOjb = new LookupDaoOjb(); classSpecificLookupDaoOjb.setJcdAlias(dataSourceName); classSpecificLookupDaoOjb.setPersistenceStructureService( KNSServiceLocator.getPersistenceStructureService()); classSpecificLookupDaoOjb.setDateTimeService(CoreApiServiceLocator.getDateTimeService()); classSpecificLookupDaoOjb.setDataDictionaryService( KRADServiceLocatorWeb.getDataDictionaryService()); lookupDaoValues.put(dataSourceName, classSpecificLookupDaoOjb); return classSpecificLookupDaoOjb; } } } return lookupDaoOjb; }
ModuleService moduleService = KRADServiceLocatorWeb.getKualiModuleService().getResponsibleModuleService(lookupClass); if (moduleService.isExternalizableBusinessObjectLookupable(lookupClass)) { baseLookupUrl = moduleService.getExternalizableBusinessObjectLookupUrl(lookupClass, Collections.<String,String>emptyMap());