***  This class provides Binary Compatibility only, not Source Compatibility  ***

com.sas.services.information.metadata
Class Remarks

com.sas.services.information.metadata.Remarks
All Implemented Interfaces:
MetadataInterface, RemarksInterface, PublicObjectInterface, java.io.Serializable, java.rmi.Remote

public class Remarks
implements RemarksInterface

Represents a set of comments or discussion thread on a particular topic.

A discussion thread or remarks occurs around a sequence of comments. Each individual comment has a text portion and one or more attachments (usually binary). Each comment maintains the time it was created, the author of the comment and it's contents. A discussion thread maintains the time it was created, the owner/creator and the current list of comments in the thread. The discussion thread is attached to the smart object for which the comments are meant.

Since:
1.1
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.sas.services.information.metadata.Metadata
_actionInterfaces, _children, _isCompatible, _isDestroyPending, _isReadCompatible, _myRefreshInterval, _myState, _omrCreateDate, _omrModifyDate, _repository, _repositoryFlag, _repositoryObject, _treeRefreshTime, formats, gmtZone, OMSOBJ_STRING, REPOSITORY_DAV, REPOSITORY_LOMR, REPOSITORY_NONE, REPOSITORY_OMR, SLASH
 
Fields inherited from interface com.sas.services.information.metadata.MetadataInterface
METADATA_STATE_DELETED, METADATA_STATE_DESTROYED, METADATA_STATE_NEW, METADATA_STATE_NORMAL, PERMISSION_READMETADATA, PERMISSION_WRITEMETADATA
 
Constructor Summary
  Remarks()
          Constructs a default instance.
protected Remarks(java.lang.Class theClass)
          Constructs a default instance.
  Remarks(DAVRemarks remarks)
          Constructs a default instance.
protected Remarks(DAVRemarks remarks, java.lang.Class theClass)
          Constructs a default instance.
  Remarks(UserContextInterface user, java.lang.String topic)
           
 
Method Summary
 void addComment(CommentInterface comment)
          Add a comment - as long as user is an allowed participant
 void addReferral(java.lang.String entityKey)
          Sets the referral, which is the item that refers to this remark.
 void clear()
          Clear the list of comments - only owner is allowed to do this
 void delete()
          Override delete to make sure that only the owner can delete the remark.
 CommentInterface getComment(CommentFilterInterface filter)
          Get a comment that satisfies the filter.
 java.util.List getComments(CommentFilterInterface filter)
          Get a list of all comments that satisfy the filter.
 java.lang.String getOwner()
          Gets the owner of the discussion thread
 java.lang.String getProperty(java.lang.String propertyName)
          Returns the value of a property.
 java.util.Set getReferrals()
           
 java.util.Date getStarted()
          Returns the date the discussion thread was started
 java.lang.String getStarted(java.text.DateFormat df)
          Returns the date the discussion thread was started
 java.lang.String getThreadId()
          Get the thread identifier for this remark
 java.lang.String getTopic()
          Gets the topic of discussion
 java.lang.String getType()
          Get the object type.
 void setOwner(UserContextInterface owner)
          Sets the owner of the discussion thread.
 void setProperty(java.lang.String propertyName, java.lang.String propertyValue)
          Sets the value of a property
 void setThreadId(java.lang.String threadId)
          Sets the thread identifier for this remark.
 void setTopic(java.lang.String topic)
          Sets the topic of discussion.
 void update()
          Persist any changes to the object back to the repository.
 
Methods inherited from class com.sas.services.information.metadata.Metadata
add, addAccessControl, addAttribute, addAttributes, addDocument, addExtension, addGroup, addImplementor, addKeyword, addObjectProperty, addObjectProperty, addPermissions, addProcessorInterface, addPrompt, addPropertySet, addRemark, addResponsibleParty, addToList, addTransactionListener, addUsedByPrototype, checkin, checkout, checkPulse, clearInformationService, commit, copyTo, countAssociatedObjects, deleteAttribute, deleteAttributes, deleteRootObject, destroy, fromByteArray, getAccessControls, getAttribute, getAttributes, getAuthorizationUtil, getContainer, getCreateDate, getDefaultLocalizableProperties, getDescription, getDocuments, getEntityKey, getEntityURL, getExtensions, getGroups, getGUID, getIdentifier, getIdentities, getImplementors, getInformationService, getKeywords, getLockedBy, getModifyDate, getName, getObjectProperties, getObjectURI, getParent, getParentPath, getParents, getPath, getPaths, getPathUrl, getPathUrl, getPermission, getPermissions, getPermissions, getPreviousVersionNames, getPrimaryPropertyGroup, getProcessorInterface, getPrompt, getPrompts, getPropertyBag, getPropertySets, getRemarksList, getReposId, getRepository, getRepositoryEntity, getRepositoryName, getReposKey, getResponsibleParties, getState, getTrackingId, getTreeRefresh, getTypeDescriptor, getUsageVersion, getUsedByPrototypes, getUsingPrototype, getVersion, hashCode, isAuthorized, isCompatible, isConnectionException, isDeleted, isDestroyed, isLoggingEnabled, isLoggingEnabled, isObjectAlive, isReadCompatible, logFormat, logFormat, logFormat, logFormat, logFormat, logFormat, logFormat, logFormat, logMessage, logMessage, logMessage, logMessage, logThrowable, logThrowable, mapNameToFilesystem, mapUrlToFilesystem, moveTo, newServiceObject, notifyTransactionListeners, refresh, removeAccessControl, removeDocument, removeExtension, removeFromList, removeGroup, removeImplementor, removeKeyword, removeObjectProperty, removePermissions, removePrompt, removePropertySet, removeResponsibleParty, removeUsedByPrototype, rollback, setAttribute, setAttributes, setCompatibility, setDefaultLocalizableProperties, setDeleted, setDescription, setDocuments, setExtensions, setGroups, setGUID, setKeywords, setName, setObjectProperties, setPermission, setPrimaryPropertyGroup, setPrompt, setPrompts, setRemarksList, setRepository, setTreeRefresh, setUsingPrototype, startTransaction, toByteArray, toString, transactionEvent, uncheckout, updateFromBag, validateNameAndFolder, validateNameAndFolder, version
 
Methods inherited from interface com.sas.services.information.metadata.MetadataInterface
add, addAccessControl, addAttribute, addAttributes, addDocument, addExtension, addGroup, addImplementor, addKeyword, addObjectProperty, addObjectProperty, addPermissions, addPrompt, addPropertySet, addRemark, addResponsibleParty, addTransactionListener, addUsedByPrototype, checkin, checkout, commit, copyTo, countAssociatedObjects, deleteAttribute, deleteAttributes, destroy, getAccessControls, getAttribute, getAttributes, getAuthorizationUtil, getCreateDate, getDescription, getDocuments, getEntityKey, getEntityURL, getExtensions, getGroups, getGUID, getIdentities, getImplementors, getKeywords, getLockedBy, getModifyDate, getObjectProperties, getParent, getParentPath, getParents, getPath, getPaths, getPermission, getPermissions, getPermissions, getPreviousVersionNames, getPrimaryPropertyGroup, getPrompt, getPrompts, getPropertyBag, getPropertySets, getRemarksList, getReposId, getRepository, getRepositoryEntity, getRepositoryName, getReposKey, getResponsibleParties, getState, getTrackingId, getUsageVersion, getUsedByPrototypes, getUsingPrototype, getVersion, isAuthorized, isCompatible, isDeleted, isDestroyed, isLoggingEnabled, isObjectAlive, isReadCompatible, logMessage, mapNameToFilesystem, mapUrlToFilesystem, moveTo, newServiceObject, refresh, removeAccessControl, removeDocument, removeExtension, removeGroup, removeImplementor, removeKeyword, removeObjectProperty, removePermissions, removePrompt, removePropertySet, removeResponsibleParty, removeUsedByPrototype, rollback, setAttribute, setAttributes, setDeleted, setDescription, setDocuments, setExtensions, setGroups, setGUID, setKeywords, setName, setObjectProperties, setPermission, setPrimaryPropertyGroup, setPrompt, setPrompts, setRemarksList, setRepository, setUsingPrototype, startTransaction, toByteArray, transactionEvent, uncheckout, updateFromBag, version
 
Methods inherited from interface com.sas.services.information.publicobject.PublicObjectInterface
addProcessorInterface, getContainer, getIdentifier, getName, getObjectURI, getPathUrl, getProcessorInterface, getTypeDescriptor
 

Constructor Detail

Remarks

public Remarks()
        throws java.rmi.RemoteException
Constructs a default instance.

Throws:
java.rmi.RemoteException - if unable to export the remote object.

Remarks

public Remarks(DAVRemarks remarks)
        throws java.rmi.RemoteException
Constructs a default instance.

Parameters:
remarks - Remarks.
Throws:
java.rmi.RemoteException - if unable to export the remote object.

Remarks

protected Remarks(java.lang.Class theClass)
           throws java.rmi.RemoteException
Constructs a default instance.

Parameters:
theClass - The subclass's class which will be used to determine appropriate RMI socket factories.
Throws:
java.rmi.RemoteException - if unable to export the remote object.

Remarks

protected Remarks(DAVRemarks remarks,
                  java.lang.Class theClass)
           throws java.rmi.RemoteException
Constructs a default instance.

Parameters:
remarks - Remarks.
theClass - The subclass's class which will be used to determine appropriate RMI socket factories.
Throws:
java.rmi.RemoteException - if unable to export the remote object.

Remarks

public Remarks(UserContextInterface user,
               java.lang.String topic)
        throws java.rmi.RemoteException
Throws:
java.rmi.RemoteException
Method Detail

getType

public java.lang.String getType()
                         throws java.rmi.RemoteException
Description copied from class: Metadata
Get the object type. Subclasses of Metadata will return a repository-neutral type string. If no subclass exists, Metadata returns the repository-specific type.

Specified by:
getType in interface MetadataInterface
Overrides:
getType in class Metadata
Returns:
A type string for the object.
Throws:
java.rmi.RemoteException - in the event of remote object failure

addComment

public void addComment(CommentInterface comment)
                throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Add a comment - as long as user is an allowed participant

Specified by:
addComment in interface RemarksInterface
Parameters:
comment - A comment to add to the discussion thread. The comment may contain attachments
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getComment

public CommentInterface getComment(CommentFilterInterface filter)
                            throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Get a comment that satisfies the filter. No filter is attained by passing a null filter or setting NOMODIFIER in the CommentFilter.

Specified by:
getComment in interface RemarksInterface
Parameters:
filter - A filter to determine which comment in the discussion thread should be returned.
Returns:
CommentInterface A comment in the discussion thread
Throws:
java.rmi.RemoteException - In the event of remote object failure.

setThreadId

public void setThreadId(java.lang.String threadId)
                 throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Sets the thread identifier for this remark.

Specified by:
setThreadId in interface RemarksInterface
Parameters:
threadId - Thread identifier for this remark.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getThreadId

public java.lang.String getThreadId()
Description copied from interface: RemarksInterface
Get the thread identifier for this remark

Specified by:
getThreadId in interface RemarksInterface
Returns:
String The thread identifier for this remark

getComments

public java.util.List getComments(CommentFilterInterface filter)
                           throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Get a list of all comments that satisfy the filter. No filter is attained by passing a null filter or setting NOMODIFIER in the CommentFilter.

Specified by:
getComments in interface RemarksInterface
Parameters:
filter - A filter to determine which comments in the discussion thread should be returned.
Returns:
List(of CommentInterface) A list of comments in the discussion thread
Throws:
java.rmi.RemoteException - In the event of remote object failure.

clear

public void clear()
           throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Clear the list of comments - only owner is allowed to do this

Specified by:
clear in interface RemarksInterface
Throws:
java.rmi.RemoteException - In the event of remote object failure.

delete

public void delete()
            throws ServiceException,
                   java.rmi.RemoteException
Override delete to make sure that only the owner can delete the remark. If there is no owner then allow deletion too.

Specified by:
delete in interface MetadataInterface
Overrides:
delete in class Metadata
Throws:
ServiceException - in the event of a repository failure.
java.rmi.RemoteException - in the event of a network failure.

getOwner

public java.lang.String getOwner()
                          throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Gets the owner of the discussion thread

Specified by:
getOwner in interface RemarksInterface
Returns:
String The owner/creator of the discussion thread
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getTopic

public java.lang.String getTopic()
                          throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Gets the topic of discussion

Specified by:
getTopic in interface RemarksInterface
Returns:
String The topic of discussion
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getStarted

public java.util.Date getStarted()
                          throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Returns the date the discussion thread was started

Specified by:
getStarted in interface RemarksInterface
Returns:
Date The date the discussion thread was started
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getStarted

public java.lang.String getStarted(java.text.DateFormat df)
                            throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Returns the date the discussion thread was started

Specified by:
getStarted in interface RemarksInterface
Parameters:
df - A dateformat to apply to the date for formatting
Returns:
String The date the discussion thread was started
Throws:
java.rmi.RemoteException - In the event of remote object failure.

update

public void update()
            throws ServiceException,
                   java.rmi.RemoteException
Description copied from class: Metadata
Persist any changes to the object back to the repository. This is not done automatically in most cases. Any change to metadata requires an update call to write it to the back end server.

Specified by:
update in interface MetadataInterface
Overrides:
update in class Metadata
Throws:
ServiceException - if an error occurs in the repository.
java.rmi.RemoteException - in the event of remote object failure

setOwner

public void setOwner(UserContextInterface owner)
              throws java.lang.IllegalStateException,
                     java.rmi.RemoteException
Description copied from interface: RemarksInterface
Sets the owner of the discussion thread. If the owner is already set then an IllegalStateException is thrown.

Specified by:
setOwner in interface RemarksInterface
Parameters:
owner - The user context that represents the owner/creator of the discussion thread
Throws:
java.lang.IllegalStateException - If the owner is already set
java.rmi.RemoteException - In the event of remote object failure.

setTopic

public void setTopic(java.lang.String topic)
              throws java.lang.IllegalStateException,
                     java.rmi.RemoteException
Description copied from interface: RemarksInterface
Sets the topic of discussion. If the topic is already set then an IllegalStateException is thrown.

Specified by:
setTopic in interface RemarksInterface
Parameters:
topic - The topic for this discussion thread
Throws:
java.lang.IllegalStateException - If the topic is already set
java.rmi.RemoteException - In the event of remote object failure.

getProperty

public java.lang.String getProperty(java.lang.String propertyName)
                             throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Returns the value of a property. If the property does not exist then return null.

Specified by:
getProperty in interface RemarksInterface
Parameters:
propertyName - The name of the property. Use the format "{namespaceURI}name". If the property is not in any namespace then use either "{}name" or just "name".
Returns:
String The value of the property requested.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

setProperty

public void setProperty(java.lang.String propertyName,
                        java.lang.String propertyValue)
                 throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Sets the value of a property

Specified by:
setProperty in interface RemarksInterface
Parameters:
propertyName - The name of the property. Use the format "{namespaceURI}name". If the property is not in any namespace then use either "{}name" or just "name".
propertyValue - The value for the property.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

addReferral

public void addReferral(java.lang.String entityKey)
                 throws java.rmi.RemoteException
Description copied from interface: RemarksInterface
Sets the referral, which is the item that refers to this remark. There can be more than one referral.

Specified by:
addReferral in interface RemarksInterface
Parameters:
entityKey - The entityKey of the smart object that refers to this remark.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getReferrals

public java.util.Set getReferrals()
                           throws java.rmi.RemoteException
Throws:
java.rmi.RemoteException

***  This class provides Binary Compatibility only, not Source Compatibility  ***




Copyright © 2009 SAS Institute Inc. All Rights Reserved.