| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.kuali.rice.krad.uif.service.impl.ViewHelperServiceImpl
org.kuali.rice.krad.inquiry.InquirableImpl
public class InquirableImpl
Implementation of the Inquirable interface that uses metadata
 from the data dictionary and performs a query against the database to retrieve
 the data object for inquiry
 
More advanced lookup operations or alternate ways of retrieving metadata can be implemented by extending this base implementation and configuring
| Field Summary | |
|---|---|
| protected  Class<?> | dataObjectClass | 
| static List<Class<?>> | SUPER_CLASS_TRANSLATOR_LISTA list that can be used to define classes that are superclasses or superinterfaces of kuali objects where those objects' inquiry URLs need to use the name of the superclass or superinterface as the business object class attribute | 
| Constructor Summary | |
|---|---|
| InquirableImpl() | |
| Method Summary | |
|---|---|
|  void | buildInquirableLink(Object dataObject,
                                       String propertyName,
                                       Inquiry inquiry)Invoked by the ViewHelperServiceto build a link to the
 inquiry | 
| protected  List<List<String>> | getAlternateKeysForClass(Class<?> clazz)Invokes the module service to retrieve any alternate keys that have been defined for the given class | 
| protected  BusinessObjectService | getBusinessObjectService() | 
| protected  DataDictionaryService | getDataDictionaryService()Gets the data dictionary service | 
| protected  DataObjectAuthorizationService | getDataObjectAuthorizationService() | 
| protected  Class<?> | getDataObjectClass()Retrieves the data object class configured for this inquirable | 
| protected  DataObjectMetaDataService | getDataObjectMetaDataService() | 
| protected  EncryptionService | getEncryptionService() | 
| protected  KualiModuleService | getKualiModuleService() | 
|  Object | retrieveDataObject(Map<String,String> parameters)Finds primary and alternate key sets configured for the configured data object class and then attempts to find a set with matching key/value pairs from the request, if a set is found then calls the module service (for EBOs) or business object service to retrieve the data object | 
| protected  List<String> | retrieveKeySetFromMap(List<List<String>> potentialKeySets,
                                           Map<String,String> parameters)Iterates through the list of key sets looking for a set where the given map of parameters has all the key names and values are non-blank, first matched set is returned | 
|  void | setDataObjectClass(Class<?> dataObjectClass)Sets the class for the data object the inquirable should retrieve | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
protected Class<?> dataObjectClass
public static List<Class<?>> SUPER_CLASS_TRANSLATOR_LIST
| Constructor Detail | 
|---|
public InquirableImpl()
| Method Detail | 
|---|
public Object retrieveDataObject(Map<String,String> parameters)
Note at this point on business objects are supported by the default implementation
retrieveDataObject in interface Inquirableparameters - - a map of string field names and values
Inquirable#retrieveDataObject(java.util.Map) 
protected List<String> retrieveKeySetFromMap(List<List<String>> potentialKeySets,
                                             Map<String,String> parameters)
potentialKeySets - - List of key sets to check for matchparameters - - map of parameter name/value pairs for matching key set
protected List<List<String>> getAlternateKeysForClass(Class<?> clazz)
clazz - - class to find alternate keys for
public void buildInquirableLink(Object dataObject,
                                String propertyName,
                                Inquiry inquiry)
InquirableViewHelperService to build a link to the
 inquiry
 
 Note this is used primarily for custom Inquirable
 implementations to customize the inquiry class or parameters for an
 inquiry. Instead of building the full inquiry link, implementations can
 make a callback to
 org.kuali.rice.krad.uif.widget.Inquiry.buildInquiryLink(Object, String,
 Class>, Map
buildInquirableLink in interface InquirabledataObject - - parent object for the inquiry propertypropertyName - - name of the property the inquiry is being built forinquiry - - instance of the inquiry widget being built for the propertyInquirable.buildInquirableLink(java.lang.Object,
      java.lang.String, org.kuali.rice.krad.uif.widget.Inquiry)public void setDataObjectClass(Class<?> dataObjectClass)
Inquirable
 Must be set before invoking any other operations on the Inquirable,
 including the retrieveDataObject method
 
setDataObjectClass in interface InquirabledataObjectClass - the class of the dataObject that this inquirable should
 retrieveInquirable.setDataObjectClass(java.lang.Class)protected Class<?> getDataObjectClass()
protected DataObjectMetaDataService getDataObjectMetaDataService()
protected KualiModuleService getKualiModuleService()
protected DataDictionaryService getDataDictionaryService()
ViewHelperServiceImpl
getDataDictionaryService in class ViewHelperServiceImplprotected DataObjectAuthorizationService getDataObjectAuthorizationService()
protected EncryptionService getEncryptionService()
protected BusinessObjectService getBusinessObjectService()
| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||