Clearspace API (1.10.16) Core Javadocs

com.jivesoftware.community
Interface Attachment

All Superinterfaces:
JiveObject

public interface Attachment
extends JiveObject

An object that encapsulates an attachment. Each attachment has a unique ID and is made up of three parts: binary data (read and written using an InputStream), a name, and content type. An attachment might have a name "stockchart.gif" and corresponding content type of "image/gif". A full listing of possible content types can be found at: ftp://ftp.iana.org/in-notes/iana/assignments/media-types/

The storage mechanism of attachments is controlled via the StorageManager; the default implementation puts attachments in the database.


Method Summary
 int getContentObjectType()
          Returns the object type of this attachments content object.
 java.lang.String getContentType()
          Returns the content type of the attachment.
 java.util.Date getCreationDate()
          Returns the date the attachment was created.
 java.io.InputStream getData()
          Returns a InputStream for the binary contents of the attachment.
 int getDownloadCount()
          Returns the number of times the attachment has been downloaded.
 JiveContentObject getJiveContentObject()
          Returns the parent JiveContentObject of the attachment.
 java.util.Date getModificationDate()
          Returns the date the attachment was last modified.
 java.lang.String getName()
          Returns the name of the attachment.
 java.util.Map<java.lang.String,java.lang.String> getProperties()
          Retrieve a map of all the extended properties for the attachment.
 long getSize()
          Returns the size of the attachment in bytes.
 void setName(java.lang.String name)
          Sets the name of the attachment.
 
Methods inherited from interface com.jivesoftware.community.JiveObject
getID, getObjectType
 

Method Detail

getJiveContentObject

JiveContentObject getJiveContentObject()
Returns the parent JiveContentObject of the attachment.

Returns:
the parent JiveContentObject which contains the attachment.

getContentType

java.lang.String getContentType()
Returns the content type of the attachment. For example, the content type of an image attachment might be "image/gif" or "image/jpeg".

Returns:
the attachment content type.

getName

java.lang.String getName()
Returns the name of the attachment. Most often, the attachment name is the original name of the file that created the attachment, such as "report.doc"

Returns:
the name of the attachment.

setName

void setName(java.lang.String name)
             throws UnauthorizedException
Sets the name of the attachment. Most often, the attachment name is the original name of the file that created the attachment, such as "report.doc"

Parameters:
name - the new name of the attachment.
Throws:
UnauthorizedException - if not allowed to modify the attachment

getSize

long getSize()
Returns the size of the attachment in bytes.

Returns:
the size of the attachment.

getData

java.io.InputStream getData()
                            throws java.io.IOException
Returns a InputStream for the binary contents of the attachment. The stream should be closed after reading the attachment is completed. The InputStream will already be buffered, so there is no advantage to using additional buffering.

Returns:
the binary contents of the attachment.
Throws:
java.io.IOException - if an error occurs reading the attachment from storage.

getCreationDate

java.util.Date getCreationDate()
Returns the date the attachment was created.

Returns:
the date the attachment was created.

getModificationDate

java.util.Date getModificationDate()
Returns the date the attachment was last modified.

Returns:
the date the attachment was last modified.

getDownloadCount

int getDownloadCount()
Returns the number of times the attachment has been downloaded.

Returns:
the number of times the attachment has been downloaded.

getProperties

java.util.Map<java.lang.String,java.lang.String> getProperties()
Retrieve a map of all the extended properties for the attachment. Each attachment can have an arbitrary number of extended properties. This allows for enhanced functionality that is not part of the base interface. The map is alterable if the user is authorized to modify the document, however only a mapping of key -> value is allowed. Null keys and values are not allowed.

Returns:
a map of attachment extended properties.

getContentObjectType

int getContentObjectType()
Returns the object type of this attachments content object.

Returns:
the object type of this attachments content object.

Clearspace Project Page

Copyright © 1999-2007 Jive Software.