org.sakaiproject.announcement.impl
Class BaseAnnouncementService.BaseAnnouncementChannelEdit

java.lang.Object
  extended by java.util.Observable
      extended by org.sakaiproject.message.impl.BaseMessageService.BaseMessageChannelEdit
          extended by org.sakaiproject.announcement.impl.BaseAnnouncementService.BaseAnnouncementChannelEdit
All Implemented Interfaces:
EventListener, AnnouncementChannel, AnnouncementChannelEdit, org.sakaiproject.entity.api.Edit, org.sakaiproject.entity.api.Entity, org.sakaiproject.message.api.MessageChannel, org.sakaiproject.message.api.MessageChannelEdit, org.sakaiproject.tool.api.SessionBindingListener
Enclosing class:
BaseAnnouncementService

public class BaseAnnouncementService.BaseAnnouncementChannelEdit
extends org.sakaiproject.message.impl.BaseMessageService.BaseMessageChannelEdit
implements AnnouncementChannelEdit

AnnouncementChannel implementation


Field Summary
 
Fields inherited from class org.sakaiproject.message.impl.BaseMessageService.BaseMessageChannelEdit
m_active, m_context, m_event, m_id, m_isRemoved, m_properties
 
Fields inherited from interface org.sakaiproject.entity.api.Entity
SEPARATOR
 
Constructor Summary
BaseAnnouncementService.BaseAnnouncementChannelEdit(Element el)
          Construct from a channel (and possibly messages) already defined in XML in a DOM tree.
BaseAnnouncementService.BaseAnnouncementChannelEdit(org.sakaiproject.message.api.MessageChannel other)
          Construct as a copy of another message.
BaseAnnouncementService.BaseAnnouncementChannelEdit(String ref)
          Construct with a reference.
 
Method Summary
 AnnouncementMessageEdit addAnnouncementMessage()
          A (AnnouncementMessageEdit) cover for addMessage.
 AnnouncementMessage addAnnouncementMessage(String subject, boolean draft, List attachments, String body)
          a (AnnouncementMessage) cover for addMessage to add a new message to this channel.
 AnnouncementMessageEdit editAnnouncementMessage(String messageId)
          A (AnnouncementMessageEdit) cover for editMessage.
 AnnouncementMessage getAnnouncementMessage(String messageId)
          Return a specific announcement channel message, as specified by message name.
 List getMessages(org.sakaiproject.javax.Filter filter, boolean ascending)
          Return a list of all or filtered messages in the channel.
 void removeAnnouncementMessage(String messageId)
          A cover for removeMessage.
 
Methods inherited from class org.sakaiproject.message.impl.BaseMessageService.BaseMessageChannelEdit
activate, addMessage, allowAddChannelMessage, allowAddDraftMessage, allowAddMessage, allowEditMessage, allowEditMessage, allowGetMessages, allowRemoveMessage, cancelMessage, closeEdit, commitDraftChanges, commitMessage_order, commitMessage, commitMessage, commitMessage, editMessage, finalize, findFilterMessages, findMessage, findMessages, getContext, getCount, getCount, getEvent, getGroupsAllowAddMessage, getGroupsAllowFunction, getGroupsAllowGetMessage, getGroupsAllowRemoveMessage, getId, getMessage, getMessages, getMessagesPublic, getProperties, getPropertiesEdit, getReference, getReference, getUrl, getUrl, groupCollectionContainsRefString, isActiveEdit, isIntersectionGroupRefsToGroups, mergeMessage, removeMessage, removeMessage, setEvent, setRemoved, startNotifyThread, toXml, valueBound, valueUnbound
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.sakaiproject.message.api.MessageChannel
addMessage, allowAddChannelMessage, allowAddDraftMessage, allowAddMessage, allowEditMessage, allowGetMessages, allowRemoveMessage, cancelMessage, commitMessage_order, commitMessage, commitMessage, commitMessage, editMessage, getContext, getCount, getCount, getGroupsAllowAddMessage, getGroupsAllowGetMessage, getGroupsAllowRemoveMessage, getMessage, getMessages, getMessagesPublic, mergeMessage, removeMessage, removeMessage
 
Methods inherited from interface org.sakaiproject.entity.api.Edit
getPropertiesEdit, isActiveEdit
 
Methods inherited from interface org.sakaiproject.entity.api.Entity
getId, getProperties, getReference, getReference, getUrl, getUrl, toXml
 

Constructor Detail

BaseAnnouncementService.BaseAnnouncementChannelEdit

public BaseAnnouncementService.BaseAnnouncementChannelEdit(String ref)
Construct with a reference.

Parameters:
ref - The channel reference.

BaseAnnouncementService.BaseAnnouncementChannelEdit

public BaseAnnouncementService.BaseAnnouncementChannelEdit(org.sakaiproject.message.api.MessageChannel other)
Construct as a copy of another message.

Parameters:
other - The other message to copy.

BaseAnnouncementService.BaseAnnouncementChannelEdit

public BaseAnnouncementService.BaseAnnouncementChannelEdit(Element el)
Construct from a channel (and possibly messages) already defined in XML in a DOM tree. The Channel is added to storage.

Parameters:
el - The XML DOM element defining the channel.
Method Detail

getAnnouncementMessage

public AnnouncementMessage getAnnouncementMessage(String messageId)
                                           throws org.sakaiproject.exception.IdUnusedException,
                                                  org.sakaiproject.exception.PermissionException
Return a specific announcement channel message, as specified by message name.

Specified by:
getAnnouncementMessage in interface AnnouncementChannel
Parameters:
messageId - The id of the message to get.
Returns:
the AnnouncementMessage that has the specified id.
Throws:
org.sakaiproject.exception.IdUnusedException - If this name is not a defined message in this announcement channel.
org.sakaiproject.exception.PermissionException - If the user does not have any permissions to read the message.

getMessages

public List getMessages(org.sakaiproject.javax.Filter filter,
                        boolean ascending)
                 throws org.sakaiproject.exception.PermissionException
Return a list of all or filtered messages in the channel. The order in which the messages will be found in the iteration is by date, oldest first if ascending is true, newest first if ascending is false.

Specified by:
getMessages in interface org.sakaiproject.message.api.MessageChannel
Overrides:
getMessages in class org.sakaiproject.message.impl.BaseMessageService.BaseMessageChannelEdit
Parameters:
filter - A filtering object to accept messages, or null if no filtering is desired.
ascending - Order of messages, ascending if true, descending if false
Returns:
a list on channel Message objects or specializations of Message objects (may be empty).
Throws:
org.sakaiproject.exception.PermissionException - if the user does not have read permission to the channel.

editAnnouncementMessage

public AnnouncementMessageEdit editAnnouncementMessage(String messageId)
                                                throws org.sakaiproject.exception.IdUnusedException,
                                                       org.sakaiproject.exception.PermissionException,
                                                       org.sakaiproject.exception.InUseException
A (AnnouncementMessageEdit) cover for editMessage. Return a specific channel message, as specified by message name, locked for update. Must commitEdit() to make official, or cancelEdit() when done!

Specified by:
editAnnouncementMessage in interface AnnouncementChannel
Parameters:
messageId - The id of the message to get.
Returns:
the Message that has the specified id.
Throws:
org.sakaiproject.exception.IdUnusedException - If this name is not a defined message in this channel.
org.sakaiproject.exception.PermissionException - If the user does not have any permissions to read the message.
org.sakaiproject.exception.InUseException - if the current user does not have permission to mess with this user.

removeAnnouncementMessage

public void removeAnnouncementMessage(String messageId)
                               throws org.sakaiproject.exception.PermissionException
A cover for removeMessage. Deletes the messages specified by the message id.

Specified by:
removeAnnouncementMessage in interface AnnouncementChannel
Parameters:
messageId - The id of the message to get.
Throws:
org.sakaiproject.exception.PermissionException - If the user does not have any permissions to delete the message.

addAnnouncementMessage

public AnnouncementMessageEdit addAnnouncementMessage()
                                               throws org.sakaiproject.exception.PermissionException
A (AnnouncementMessageEdit) cover for addMessage. Add a new message to this channel. Must commitEdit() to make official, or cancelEdit() when done!

Specified by:
addAnnouncementMessage in interface AnnouncementChannel
Returns:
The newly added message, locked for update.
Throws:
org.sakaiproject.exception.PermissionException - If the user does not have write permission to the channel.

addAnnouncementMessage

public AnnouncementMessage addAnnouncementMessage(String subject,
                                                  boolean draft,
                                                  List attachments,
                                                  String body)
                                           throws org.sakaiproject.exception.PermissionException
a (AnnouncementMessage) cover for addMessage to add a new message to this channel.

Specified by:
addAnnouncementMessage in interface AnnouncementChannel
Parameters:
subject - The message header subject.
draft - The message header draft indication.
attachments - The message header attachments, a vector of Reference objects.
body - The message body.
Returns:
The newly added message.
Throws:
org.sakaiproject.exception.PermissionException - If the user does not have write permission to the channel.


Copyright © 2003-2013 University of Michigan. All Rights Reserved.