Coverage Report - org.kuali.rice.kim.api.type.KimTypeServiceTemp
 
Classes in this File Line Coverage Branch Coverage Complexity
KimTypeServiceTemp
N/A
N/A
1
 
 1  
 package org.kuali.rice.kim.api.type;
 2  
 
 3  
 import org.kuali.rice.core.api.uif.RemotableAttributeError;
 4  
 
 5  
 import java.util.List;
 6  
 import java.util.Map;
 7  
 
 8  
 /**
 9  
  * This is the base service interface for handling type-specific behavior.  Types can be attached
 10  
  * to various objects (currently groups and roles) in KIM to add additional attributes and
 11  
  * modify their behavior.
 12  
  *
 13  
  * @author Kuali Rice Team (rice.collab@kuali.org)
 14  
  */
 15  
 public interface KimTypeServiceTemp {
 16  
 
 17  
     /**
 18  
      * Returns the name of a workflow document type that should be passed as a qualifier with
 19  
      * the "documentTypeName" key when resolving responsibilities when routing a KIM document
 20  
      * which uses this KIM type (such as a group, role, or person document).
 21  
      *
 22  
      * return null to indicate that there is no custom workflow document needed for this type.
 23  
      *
 24  
      * @return the doc type name or null.
 25  
      */
 26  
     String getWorkflowDocumentTypeName();
 27  
 
 28  
     /**
 29  
      * Returns an unmodifiable list of strings identifying the name of the attributes of the KIM object which uses this
 30  
      * type that should be included in the Map of qualifiers that are provided to the KIM responsibility service when
 31  
      * resolving responsibility-based routing at the node with the given name.
 32  
      *
 33  
      * Returns an empty list, indicating that no attributes from this
 34  
      * type should be passed to workflow.
 35  
      *
 36  
      * @return an unmodifiable list should not return null.
 37  
      */
 38  
     List<String> getWorkflowRoutingAttributes(String nodeName);
 39  
 
 40  
     /**
 41  
      * Perform validation on the attributes of an object.
 42  
      * An empty list indicates that there were no errors.
 43  
      *
 44  
      * This method can be used to perform compound validations across multiple
 45  
      * attributes attached to an object.
 46  
      */
 47  
     List<RemotableAttributeError> validateAttributes(String kimTypeId, Map<String, String> attributes);
 48  
 
 49  
     /**
 50  
      * Perform validation on the attributes of an object.
 51  
      * An empty list indicates that there were no errors.
 52  
      */
 53  
     List<RemotableAttributeError> validateAttributesAgainstExisting(String kimTypeId, Map<String, String> newAttributes, Map<String, String> oldAttributes);
 54  
 }
 55