Interface ModuleService

All Superinterfaces:
org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.Aware, org.springframework.beans.factory.InitializingBean
All Known Implementing Classes:
ModuleServiceBase, RemoteModuleServiceBase

public interface ModuleService extends org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware
Defines service methods for module services
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Method Details

    • getModuleConfiguration

      ModuleConfiguration getModuleConfiguration()
      This method returns the module configuration.
      Returns:
      module configuration
    • isResponsibleFor

      boolean isResponsibleFor(Class businessObjectClass)
      This method determines whether this service is responsible for the business object class passed in, or not.
      Parameters:
      businessObjectClass -
      Returns:
      true if this module is responsible for the business object
    • listPrimaryKeyFieldNames

      List listPrimaryKeyFieldNames(Class businessObjectInterfaceClass)
      This method returns the list of primary keys for the EBO.
      Parameters:
      businessObjectInterfaceClass -
      Returns:
      list of primary key field names
    • listAlternatePrimaryKeyFieldNames

      List<List<String>> listAlternatePrimaryKeyFieldNames(Class businessObjectInterfaceClass)
      This method returns a list of alternate primary keys. This is used when the "real" primary key is not the only one that can be used. For example, documentType has "documentTypeId" as its primary key, but the "name" could also be used. A List of Lists is returned because because there can be component keys: Ex: {name, date} {department, personId}
      Parameters:
      businessObjectInterfaceClass -
      Returns:
      List of List of Strings.
    • getExternalizableBusinessObjectDictionaryEntry

      BusinessObjectEntry getExternalizableBusinessObjectDictionaryEntry(Class businessObjectInterfaceClass)
      This method gets the business object dictionary entry for the passed in externalizable business object class.
      Parameters:
      businessObjectInterfaceClass -
      Returns:
      business object
    • getExternalizableBusinessObject

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> T getExternalizableBusinessObject(Class<T> businessObjectClass, Map<String,Object> fieldValues)
      This method gets the externalizable business object, given its type and a map of primary keys and values
      Parameters:
      businessObjectClass -
      fieldValues -
      Returns:
      business object
    • getExternalizableBusinessObjectsList

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> List<T> getExternalizableBusinessObjectsList(Class<T> businessObjectClass, Map<String,Object> fieldValues)
      This method gets the list of externalizable business objects, given its type and a map of primary keys and values.
      Parameters:
      businessObjectClass -
      fieldValues -
      Returns:
      list of business objects
    • getExternalizableBusinessObjectsListForLookup

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> List<T> getExternalizableBusinessObjectsListForLookup(Class<T> businessObjectClass, Map<String,Object> fieldValues, boolean unbounded)
      This method gets the list of externalizable business objects for lookup, given its type and a map of primary keys and values.
      Type Parameters:
      T -
      Parameters:
      businessObjectClass -
      fieldValues -
      unbounded -
      Returns:
      list of business objects
    • getExternalizableDataObjectInquiryUrl

      String getExternalizableDataObjectInquiryUrl(Class<?> inquiryDataObjectClass, Properties parameters)
      Returns a URL so that the inquiry framework may redirect a user to the appropriate (possibly external) website at which to view inquiry information
      Parameters:
      inquiryDataObjectClass - - a ExternalizableBusinessObject managed by this module
      parameters - - any inquiry parameters, and the primary key values of the inquiry class would be in here
      Returns:
      String URL where externalizable object information may be viewed
    • getExternalizableDataObjectLookupUrl

      String getExternalizableDataObjectLookupUrl(Class<?> inquiryDataObjectClass, Properties parameters)
      Returns a URL so that the lookup framework may redirect a user to the appropriate (possibly external) website at which to the data for the object may be searched
      Parameters:
      inquiryDataObjectClass - - a ExternalizableBusinessObject managed by this module
      parameters - - any parameters for the lookup call
      Returns:
      String URL where externalizable object information may be searched
    • getExternalizableBusinessObjectInquiryUrl

      @Deprecated String getExternalizableBusinessObjectInquiryUrl(Class inquiryBusinessObjectClass, Map<String,String[]> parameters)
      Deprecated.
      This method returns a URL so that the inquiry framework may redirect a user to the appropriate (possibly external) website at which to view inquiry information.
      Parameters:
      inquiryBusinessObjectClass - a ExternalizableBusinessObject managed by this module
      parameters - any inquiry parameters, and the primary key values of the inquiryBusinessObjectClass would be in here
      Returns:
      a URL where externalizable business object information may be viewed.
    • getExternalizableBusinessObjectLookupUrl

      @Deprecated String getExternalizableBusinessObjectLookupUrl(Class inquiryBusinessObjectClass, Map<String,String> parameters)
      Deprecated.
      This method gets the lookup url for the given externalizable business object properties.
      Parameters:
      parameters -
      Returns:
      lookup url
    • retrieveExternalizableBusinessObjectIfNecessary

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> T retrieveExternalizableBusinessObjectIfNecessary(org.kuali.rice.krad.bo.BusinessObject businessObject, T currentInstanceExternalizableBO, String externalizableRelationshipName)
      This method retrieves the externalizable business object, if it is not already populated with the matching primary key values.
      Parameters:
      businessObject -
      currentInstanceExternalizableBO -
      externalizableRelationshipName -
      Returns:
      business object
    • retrieveExternalizableBusinessObjectsList

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> List<T> retrieveExternalizableBusinessObjectsList(org.kuali.rice.krad.bo.BusinessObject businessObject, String externalizableRelationshipName, Class<T> externalizableClazz)
      This method retrieves a list of externalizable business objects given a business object, name of the relationship between the business object and the externalizable business object, and the externalizable business object class.
      Parameters:
      businessObject -
      externalizableRelationshipName -
      externalizableClazz -
      Returns:
      list of externalizable business objects
    • isExternalizable

      boolean isExternalizable(Class boClass)
      This method determines whether or not a bo class is externalizable.
      Parameters:
      boClass -
      Returns:
      true if the class is externalizable
    • isExternalizableBusinessObjectLookupable

      boolean isExternalizableBusinessObjectLookupable(Class boClass)
      Parameters:
      boClass -
      Returns:
      true if the class is lookupable and externalizable
    • isExternalizableBusinessObjectInquirable

      boolean isExternalizableBusinessObjectInquirable(Class boClass)
      Parameters:
      boClass -
      Returns:
      true if the class is inquirable and externalizable
    • createNewObjectFromExternalizableClass

      <T extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> T createNewObjectFromExternalizableClass(Class<T> boClass)
      Type Parameters:
      T - business object type
      Parameters:
      boClass - business object class
      Returns:
      business object
    • getExternalizableBusinessObjectImplementation

      <E extends org.kuali.rice.krad.bo.ExternalizableBusinessObject> Class<E> getExternalizableBusinessObjectImplementation(Class<E> externalizableBusinessObjectInterface)
      For a given ExternalizableBusinessObject interface, return the implementation class provided by this module.
    • isLocked

      boolean isLocked()
      This method determines whether or not this module is currently locked
    • goToCentralRiceForInquiry

      boolean goToCentralRiceForInquiry()
      This method determines whether or not the central rice server should be used for lookups.
      Returns:
      true if the central rice server should be used for lookups