org.kuali.rice.krms.impl.repository
Interface AgendaBoService

All Known Implementing Classes:
AgendaBoServiceImpl

public interface AgendaBoService

This is the interface for accessing KRMS repository Agenda related business objects.

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

Method Summary
 void addAgendaItem(AgendaItemDefinition agendaItem, String parentId, Boolean position)
          This will create an AgendaItemDefinition in the repository exactly like the parameter passed in.
 AgendaDefinition createAgenda(AgendaDefinition agenda)
          This will create a AgendaDefinition exactly like the parameter passed in.
 AgendaItemDefinition createAgendaItem(AgendaItemDefinition agendaItem)
          This will create an AgendaItemDefinition in the repository exactly like the parameter passed in.
 void deleteAgenda(String agendaId)
          Delete the AgendaDefinition with the given id.
 void deleteAgendaItem(String id)
           
 AgendaBo from(AgendaDefinition im)
          Converts a immutable object to it's mutable bo counterpart
 AgendaDefinition getAgendaByAgendaId(String agendaId)
          Retrieves an Agenda from the repository based on the given agenda id.
 AgendaDefinition getAgendaByNameAndContextId(String name, String contextId)
          Retrieves an Agenda from the repository based on the provided agenda name and context id.
 AgendaItemDefinition getAgendaItemById(String id)
          Retrieves an AgendaItemDefinition from the repository based on the given agenda id.
 List<AgendaItemDefinition> getAgendaItemsByAgendaId(String id)
           
 List<AgendaItemDefinition> getAgendaItemsByContext(String contextId)
           
 List<AgendaItemDefinition> getAgendaItemsByType(String typeId)
           
 List<AgendaItemDefinition> getAgendaItemsByTypeAndContext(String typeId, String contextId)
           
 List<AgendaDefinition> getAgendasByContextId(String contextId)
          Retrieves a set of Agendas associated with a context.
 List<AgendaDefinition> getAgendasByType(String typeId)
           
 List<AgendaDefinition> getAgendasByTypeAndContext(String typeId, String contextId)
           
 AgendaDefinition to(AgendaBo bo)
          Converts a mutable bo to it's immutable counterpart
 void updateAgenda(AgendaDefinition agenda)
          This will update an existing AgendaDefinition.
 void updateAgendaItem(AgendaItemDefinition agendaItem)
          This will update an existing AgendaItemDefinition.
 

Method Detail

createAgenda

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
AgendaDefinition createAgenda(AgendaDefinition agenda)
This will create a AgendaDefinition exactly like the parameter passed in.

Parameters:
agenda - The Agenda to create
Throws:
IllegalArgumentException - if the Agenda is null
IllegalStateException - if the Agenda already exists in the system

updateAgenda

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
void updateAgenda(AgendaDefinition agenda)
This will update an existing AgendaDefinition.

Parameters:
agenda - The Agenda to update
Throws:
IllegalArgumentException - if the Agenda is null
IllegalStateException - if the Agenda does not exists in the system

deleteAgenda

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
void deleteAgenda(String agendaId)
Delete the AgendaDefinition with the given id.

Parameters:
agendaId - to delete.
Throws:
IllegalArgumentException - if the Agenda is null.
IllegalStateException - if the Agenda does not exists in the system

getAgendaByAgendaId

@Cacheable(value="http://rice.kuali.org/krms/v2_0/AgendaType",
           key="\'agendaId=\' + #p0")
AgendaDefinition getAgendaByAgendaId(String agendaId)
Retrieves an Agenda from the repository based on the given agenda id.

Parameters:
agendaId - the id of the Agenda to retrieve
Returns:
an AgendaDefinition identified by the given agendaId. A null reference is returned if an invalid or non-existent id is supplied.

getAgendaByNameAndContextId

@Cacheable(value="http://rice.kuali.org/krms/v2_0/AgendaType",
           key="\'name=\' + #p0 + \'|\' + \'contextId=\' + #p1")
AgendaDefinition getAgendaByNameAndContextId(String name,
                                                       String contextId)
Retrieves an Agenda from the repository based on the provided agenda name and context id.

Parameters:
name - the name of the Agenda to retrieve.
contextId - the id of the context that the agenda belongs to.
Returns:
an AgendaDefinition identified by the given name and namespace. A null reference is returned if an invalid or non-existent name and namespace combination is supplied.

getAgendasByContextId

@Cacheable(value="http://rice.kuali.org/krms/v2_0/AgendaType",
           key="\'contextId=\' + #p0")
List<AgendaDefinition> getAgendasByContextId(String contextId)
Retrieves a set of Agendas associated with a context.

Parameters:
contextId - the id of the context
Returns:
a set of AgendaDefinition associated with the given context. A null reference is returned if an invalid or contextId is supplied.

createAgendaItem

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
AgendaItemDefinition createAgendaItem(AgendaItemDefinition agendaItem)
This will create an AgendaItemDefinition in the repository exactly like the parameter passed in.

Parameters:
agendaItem - The AgendaItemDefinition to create
Throws:
IllegalArgumentException - if the AgendaItemDefinition is null
IllegalStateException - if the AgendaItemDefinition already exists in the system

updateAgendaItem

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
void updateAgendaItem(AgendaItemDefinition agendaItem)
This will update an existing AgendaItemDefinition.

Parameters:
agendaItem - The AgendaItemDefinition to update
Throws:
IllegalArgumentException - if the AgendaItemDefinition is null
IllegalStateException - if the AgendaItemDefinition does not exists in the system

addAgendaItem

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
void addAgendaItem(AgendaItemDefinition agendaItem,
                              String parentId,
                              Boolean position)
This will create an AgendaItemDefinition in the repository exactly like the parameter passed in. The AgendaItemDefinition will be linked to an existing AgendaItemDefinition in the relationship provided. Linking the AgendaItems effectively builds a tree of AgendaItems that may be traversed by the engine.

Parameters:
agendaItem - The AgendaItemDefinition to create
parentId - The id of the existing AgendaItemDefinition to be linked with the newly created AgendaItemDefinition
position - A boolean used to specify the relationship between the linked AgendaItems.

If the position parameter is true, the new AgendaItemDefinition is linked as the next AgendaItemDefinition to be evaluated if the parent AgendaItemDefinition evaluates to TRUE.

If the position parameter is false, the new AgendaItemDefinition is linked as the next AgendaItemDefinition to be evaluated if the parent AgendaItemDefinition evaluates to FALSE.

If the position parameter is null, the new AgendaItemDefinition is linked as the next AgendaItemDefinition to be evaluated after any true or false branches of the tree have been traversed.

Throws:
IllegalArgumentException - if the AgendaItemDefinition is null
IllegalStateException - if the parent AgendaItemDefinition does not already exists in the system

getAgendaItemById

@Cacheable(value="http://rice.kuali.org/krms/v2_0/AgendaItemType",
           key="\'id=\' + #p0")
AgendaItemDefinition getAgendaItemById(String id)
Retrieves an AgendaItemDefinition from the repository based on the given agenda id.

Parameters:
id - the id of the AgendaItemDefinition to retrieve
Returns:
an AgendaItemDefinition identified by the given id. A null reference is returned if an invalid or non-existent id is supplied.

getAgendaItemsByAgendaId

List<AgendaItemDefinition> getAgendaItemsByAgendaId(String id)

getAgendasByType

List<AgendaDefinition> getAgendasByType(String typeId)
                                        throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

getAgendasByTypeAndContext

List<AgendaDefinition> getAgendasByTypeAndContext(String typeId,
                                                  String contextId)
                                                  throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

getAgendaItemsByType

List<AgendaItemDefinition> getAgendaItemsByType(String typeId)
                                                throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

getAgendaItemsByContext

List<AgendaItemDefinition> getAgendaItemsByContext(String contextId)
                                                   throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

getAgendaItemsByTypeAndContext

List<AgendaItemDefinition> getAgendaItemsByTypeAndContext(String typeId,
                                                          String contextId)
                                                          throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

deleteAgendaItem

@CacheEvict(value={"http://rice.kuali.org/krms/v2_0/AgendaTreeDefinition","http://rice.kuali.org/krms/v2_0/AgendaType","http://rice.kuali.org/krms/v2_0/AgendaItemType","http://rice.kuali.org/krms/v2_0/ContextDefinitionType"},
            allEntries=true)
void deleteAgendaItem(String id)
                      throws RiceIllegalArgumentException
Throws:
RiceIllegalArgumentException

to

AgendaDefinition to(AgendaBo bo)
Converts a mutable bo to it's immutable counterpart

Parameters:
bo - the mutable business object
Returns:
the immutable object

from

AgendaBo from(AgendaDefinition im)
Converts a immutable object to it's mutable bo counterpart

Parameters:
im - immutable object
Returns:
the mutable bo


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.