org.simpleframework.http

## Interface Part

    public interface Part

The `Part` object is used to represent a part within a request message. Typically a part represents either a text parameter or a file, with associated headers. The contents of the part can be acquire as an `InputStream` or as a string encoded in the default HTTP encoding ISO-8859-1 or in the encoding specified with the Content-Type header.

Author:
  Niall Gallagher
See Also:
  `Form`

### Method Summary

Methods
`java.lang.String` `getContent()` This is used to acquire the content of the part as a string.
`ContentType` `getContentType()` This is used to acquire the content type for this part.
`java.lang.String` `getFileName()` This method is used to acquire the file name of the part.
`java.lang.String` `getHeader(java.lang.String name)` This is used to acquire the header value for the specified header name.
`java.io.InputStream` `getInputStream()` This is used to acquire an `InputStream` for the part.
`java.lang.String` `getName()` This method is used to acquire the name of the part.
`boolean` `isFile()` This method is used to determine the type of a part.

### Method Detail

#### isFile

    boolean isFile()

This method is used to determine the type of a part. Typically a part is either a text parameter or a file. If this is true then the content represented by the associated part is a file.

Returns:
  this returns true if the associated part is a file

#### getName

    java.lang.String getName()

This method is used to acquire the name of the part. Typically this is used when the part represents a text parameter rather than a file. However, this can also be used with a file part.

Returns:
  this returns the name of the associated part

#### getFileName

    java.lang.String getFileName()

This method is used to acquire the file name of the part. This is used when the part represents a text parameter rather than a file. However, this can also be used with a file part.

Returns:
  this returns the file name of the associated part

#### getHeader

    java.lang.String getHeader(java.lang.String name)

This is used to acquire the header value for the specified header name. Providing the header values through this method ensures any special processing for a know content type can be handled by an application.

Parameters:
  `name` - the name of the header to get the value for
Returns:
  value of the header mapped to the specified name

#### getContent

    java.lang.String getContent()
                                throws java.io.IOException

This is used to acquire the content of the part as a string. The encoding of the string is taken from the content type. If no content type is sent the content is decoded in the standard default of ISO-8859-1.

Returns:
  this returns a string representing the content
Throws:
  `java.io.IOException` - thrown if the content can not be created

#### getInputStream

    java.io.InputStream getInputStream()
                                       throws java.io.IOException

This is used to acquire an `InputStream` for the part. Acquiring the stream allows the content of the part to be consumed by reading the stream. Each invocation of this method will produce a new stream starting from the first byte.

Returns:
  this returns the stream for this part object
Throws:
  `java.io.IOException` - thrown if the stream can not be created

#### getContentType

    ContentType getContentType()

This is used to acquire the content type for this part. This is typically the type of content for a file part, as provided by a MIME type from the HTTP "Content-Type" header.

Returns:
  this returns the content type for the part object