public class MixedAttribute extends java.lang.Object implements Attribute
InterfaceHttpData.HttpDataType
Modifier and Type | Field and Description |
---|---|
private Attribute |
attribute |
private long |
limitSize |
private long |
maxSize |
Constructor and Description |
---|
MixedAttribute(java.lang.String name,
long limitSize) |
MixedAttribute(java.lang.String name,
long limitSize,
java.nio.charset.Charset charset) |
MixedAttribute(java.lang.String name,
long definedSize,
long limitSize) |
MixedAttribute(java.lang.String name,
long definedSize,
long limitSize,
java.nio.charset.Charset charset) |
MixedAttribute(java.lang.String name,
java.lang.String value,
long limitSize) |
MixedAttribute(java.lang.String name,
java.lang.String value,
long limitSize,
java.nio.charset.Charset charset) |
Modifier and Type | Method and Description |
---|---|
void |
addContent(ByteBuf buffer,
boolean last)
Add the content from the ChannelBuffer
|
void |
checkSize(long newSize)
Check if the new size is not reaching the max limit allowed.
|
int |
compareTo(InterfaceHttpData o) |
ByteBuf |
content()
Return the data which is held by this
ByteBufHolder . |
Attribute |
copy()
Creates a deep copy of this
ByteBufHolder . |
long |
definedLength()
Returns the defined length of the HttpData.
|
void |
delete()
Deletes the underlying storage for a file item, including deleting any
associated temporary disk file.
|
Attribute |
duplicate()
Duplicates this
ByteBufHolder . |
boolean |
equals(java.lang.Object obj) |
byte[] |
get()
Returns the contents of the file item as an array of bytes.
|
ByteBuf |
getByteBuf()
Returns the content of the file item as a ByteBuf
|
java.nio.charset.Charset |
getCharset()
Returns the Charset passed by the browser or null if not defined.
|
ByteBuf |
getChunk(int length)
Returns a ChannelBuffer for the content from the current position with at
most length read bytes, increasing the current position of the Bytes
read.
|
java.io.File |
getFile() |
InterfaceHttpData.HttpDataType |
getHttpDataType() |
long |
getMaxSize()
Returns the maxSize for this HttpData.
|
java.lang.String |
getName()
Returns the name of this InterfaceHttpData.
|
java.lang.String |
getString()
Returns the contents of the file item as a String, using the default
character encoding.
|
java.lang.String |
getString(java.nio.charset.Charset encoding)
Returns the contents of the file item as a String, using the specified
charset.
|
java.lang.String |
getValue()
Returns the value of this HttpData.
|
int |
hashCode() |
boolean |
isCompleted() |
boolean |
isInMemory()
Provides a hint as to whether or not the file contents will be read from
memory.
|
long |
length()
Returns the size in byte of the InterfaceHttpData
|
int |
refCnt()
Returns the reference count of this object.
|
boolean |
release()
Decreases the reference count by
1 and deallocates this object if the reference count reaches at
0 . |
boolean |
release(int decrement)
Decreases the reference count by the specified
decrement and deallocates this object if the reference
count reaches at 0 . |
boolean |
renameTo(java.io.File dest)
A convenience getMethod to write an uploaded item to disk.
|
Attribute |
replace(ByteBuf content)
Returns a new
ByteBufHolder which contains the specified content . |
Attribute |
retain()
Increases the reference count by
1 . |
Attribute |
retain(int increment)
Increases the reference count by the specified
increment . |
Attribute |
retainedDuplicate()
Duplicates this
ByteBufHolder . |
void |
setCharset(java.nio.charset.Charset charset)
Set the Charset passed by the browser if defined
|
void |
setContent(ByteBuf buffer)
Set the content from the ChannelBuffer (erase any previous data)
|
void |
setContent(java.io.File file)
Set the content from the file (erase any previous data)
|
void |
setContent(java.io.InputStream inputStream)
Set the content from the inputStream (erase any previous data)
|
void |
setMaxSize(long maxSize)
Set the maxSize for this HttpData.
|
void |
setValue(java.lang.String value)
Sets the value of this HttpData.
|
java.lang.String |
toString() |
Attribute |
touch()
Records the current access location of this object for debugging purposes.
|
Attribute |
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging
purposes.
|
private Attribute attribute
private final long limitSize
private long maxSize
public MixedAttribute(java.lang.String name, long limitSize)
public MixedAttribute(java.lang.String name, long definedSize, long limitSize)
public MixedAttribute(java.lang.String name, long limitSize, java.nio.charset.Charset charset)
public MixedAttribute(java.lang.String name, long definedSize, long limitSize, java.nio.charset.Charset charset)
public MixedAttribute(java.lang.String name, java.lang.String value, long limitSize)
public MixedAttribute(java.lang.String name, java.lang.String value, long limitSize, java.nio.charset.Charset charset)
public long getMaxSize()
HttpData
getMaxSize
in interface HttpData
public void setMaxSize(long maxSize)
HttpData
setMaxSize
in interface HttpData
public void checkSize(long newSize) throws java.io.IOException
HttpData
public void addContent(ByteBuf buffer, boolean last) throws java.io.IOException
HttpData
addContent
in interface HttpData
buffer
- must be not null except if last is set to Falselast
- True of the buffer is the last onejava.io.IOException
public void delete()
HttpData
public byte[] get() throws java.io.IOException
HttpData
public ByteBuf getByteBuf() throws java.io.IOException
HttpData
getByteBuf
in interface HttpData
java.io.IOException
public java.nio.charset.Charset getCharset()
HttpData
getCharset
in interface HttpData
public java.lang.String getString() throws java.io.IOException
HttpData
public java.lang.String getString(java.nio.charset.Charset encoding) throws java.io.IOException
HttpData
public boolean isCompleted()
isCompleted
in interface HttpData
public boolean isInMemory()
HttpData
isInMemory
in interface HttpData
public long length()
HttpData
public long definedLength()
HttpData
FileUpload
or any known big Attribute
.definedLength
in interface HttpData
public boolean renameTo(java.io.File dest) throws java.io.IOException
HttpData
public void setCharset(java.nio.charset.Charset charset)
HttpData
setCharset
in interface HttpData
charset
- Charset to set - must be not nullpublic void setContent(ByteBuf buffer) throws java.io.IOException
HttpData
setContent
in interface HttpData
buffer
- must be not nulljava.io.IOException
public void setContent(java.io.File file) throws java.io.IOException
HttpData
setContent
in interface HttpData
file
- must be not nulljava.io.IOException
public void setContent(java.io.InputStream inputStream) throws java.io.IOException
HttpData
setContent
in interface HttpData
inputStream
- must be not nulljava.io.IOException
public InterfaceHttpData.HttpDataType getHttpDataType()
getHttpDataType
in interface InterfaceHttpData
public java.lang.String getName()
InterfaceHttpData
getName
in interface InterfaceHttpData
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int compareTo(InterfaceHttpData o)
compareTo
in interface java.lang.Comparable<InterfaceHttpData>
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getValue() throws java.io.IOException
Attribute
public void setValue(java.lang.String value) throws java.io.IOException
Attribute
public ByteBuf getChunk(int length) throws java.io.IOException
HttpData
public java.io.File getFile() throws java.io.IOException
public Attribute copy()
ByteBufHolder
ByteBufHolder
.public Attribute duplicate()
ByteBufHolder
ByteBufHolder
. Be aware that this will not automatically call ByteBufHolder.retain()
.public Attribute retainedDuplicate()
ByteBufHolder
ByteBufHolder
. This method returns a retained duplicate unlike ByteBufHolder.duplicate()
.retainedDuplicate
in interface ByteBufHolder
retainedDuplicate
in interface Attribute
retainedDuplicate
in interface HttpData
ByteBuf.retainedDuplicate()
public Attribute replace(ByteBuf content)
ByteBufHolder
ByteBufHolder
which contains the specified content
.public ByteBuf content()
ByteBufHolder
ByteBufHolder
.content
in interface ByteBufHolder
public int refCnt()
ReferenceCounted
0
, it means this object has been deallocated.refCnt
in interface ReferenceCounted
public Attribute retain()
ReferenceCounted
1
.retain
in interface ByteBufHolder
retain
in interface Attribute
retain
in interface HttpData
retain
in interface InterfaceHttpData
retain
in interface ReferenceCounted
public Attribute retain(int increment)
ReferenceCounted
increment
.retain
in interface ByteBufHolder
retain
in interface Attribute
retain
in interface HttpData
retain
in interface InterfaceHttpData
retain
in interface ReferenceCounted
public Attribute touch()
ReferenceCounted
ResourceLeakDetector
. This method is a shortcut to touch(null)
.touch
in interface ByteBufHolder
touch
in interface Attribute
touch
in interface HttpData
touch
in interface InterfaceHttpData
touch
in interface ReferenceCounted
public Attribute touch(java.lang.Object hint)
ReferenceCounted
ResourceLeakDetector
.touch
in interface ByteBufHolder
touch
in interface Attribute
touch
in interface HttpData
touch
in interface InterfaceHttpData
touch
in interface ReferenceCounted
public boolean release()
ReferenceCounted
1
and deallocates this object if the reference count reaches at
0
.release
in interface ReferenceCounted
true
if and only if the reference count became 0
and this object has been deallocatedpublic boolean release(int decrement)
ReferenceCounted
decrement
and deallocates this object if the reference
count reaches at 0
.release
in interface ReferenceCounted
true
if and only if the reference count became 0
and this object has been deallocated