org.kuali.rice.krad.service.impl
Class DataDictionaryRemoteFieldServiceImpl

java.lang.Object
  extended by org.kuali.rice.krad.service.impl.DataDictionaryRemoteFieldServiceImpl
All Implemented Interfaces:
DataDictionaryRemoteFieldService

public class DataDictionaryRemoteFieldServiceImpl
extends Object
implements DataDictionaryRemoteFieldService

Implementation of the DataDictionaryRemoteFieldService service

Author:
Kuali Rice Team (rice.collab@kuali.org)

Constructor Summary
DataDictionaryRemoteFieldServiceImpl()
           
 
Method Summary
 RemotableAttributeField buildRemotableFieldFromAttributeDefinition(String componentClassName, String attributeName)
          Builds and returns an RemotableAttributeField instance based on the data dictionary attribute definition that is associated with the given component class name (business object or data object entry) and the given attribute name
protected  RemotableAbstractControl.Builder createControl(AttributeDefinition attr)
          Creates a RemotableAbstractControl instance based on the control definition within the given attribute definition
protected  RemotableQuickFinder.Builder createQuickFinder(Class<?> componentClass, String attributeName)
          Builds a RemotableQuickFinder instance for the given attribute based on determined relationships
protected  DataDictionaryService getDataDictionaryService()
           
protected  DataObjectMetaDataService getDataObjectMetaDataService()
           
protected  ConfigurationService getKualiConfigurationService()
           
protected  Map<String,String> getValues(AttributeDefinition attr)
          Will first try to retrieve options configured on the control.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataDictionaryRemoteFieldServiceImpl

public DataDictionaryRemoteFieldServiceImpl()
Method Detail

buildRemotableFieldFromAttributeDefinition

public RemotableAttributeField buildRemotableFieldFromAttributeDefinition(String componentClassName,
                                                                          String attributeName)
Description copied from interface: DataDictionaryRemoteFieldService
Builds and returns an RemotableAttributeField instance based on the data dictionary attribute definition that is associated with the given component class name (business object or data object entry) and the given attribute name

If an attribute definition is not found a runtime exception should be thrown

Specified by:
buildRemotableFieldFromAttributeDefinition in interface DataDictionaryRemoteFieldService
Parameters:
componentClassName - - class name for the attribute, used to find the data dictionary entry
attributeName - - name of the attribute whose definition should be used
Returns:
RemotableAttributeField instance built
See Also:
DataDictionaryRemoteFieldService.buildRemotableFieldFromAttributeDefinition(java.lang.String, java.lang.String)

createControl

protected RemotableAbstractControl.Builder createControl(AttributeDefinition attr)
Creates a RemotableAbstractControl instance based on the control definition within the given attribute definition

Parameters:
attr - - attribute definition instance to pull control from
Returns:
RemotableAbstractControl instance or null if one could not be built

getValues

protected Map<String,String> getValues(AttributeDefinition attr)
Will first try to retrieve options configured on the control. If that doesn't return any values then will try to use the optionfinder on the AttributeDefinition.

Parameters:
attr - - AttributeDefinition
Returns:
Map of key value pairs

createQuickFinder

protected RemotableQuickFinder.Builder createQuickFinder(Class<?> componentClass,
                                                         String attributeName)
Builds a RemotableQuickFinder instance for the given attribute based on determined relationships

Uses the DataObjectMetaDataService to find relationships the given attribute participates in within the given class. If a relationship is not found, the title attribute is also checked to determine if a lookup should be rendered back to the component class itself. If a relationship suitable for lookup is found, the associated field conversions and lookup parameters are built

Parameters:
componentClass - - class that attribute belongs to and should be checked for relationships
attributeName - - name of the attribute to determine quickfinder for
Returns:
RemotableQuickFinder.Builder instance for the configured lookup, or null if one could not be found

getDataDictionaryService

protected DataDictionaryService getDataDictionaryService()

getDataObjectMetaDataService

protected DataObjectMetaDataService getDataObjectMetaDataService()

getKualiConfigurationService

protected ConfigurationService getKualiConfigurationService()


Copyright © 2005-2012 The Kuali Foundation. All Rights Reserved.