Package org.elasticsearch.common.bytes
Class BytesReference
- java.lang.Object
-
- org.elasticsearch.common.bytes.BytesReference
-
- All Implemented Interfaces:
java.lang.Comparable<BytesReference>
,ToXContent
,ToXContentFragment
- Direct Known Subclasses:
ByteBufferReference
,BytesArray
,CompositeBytesReference
,PagedBytesReference
public abstract class BytesReference extends java.lang.Object implements java.lang.Comparable<BytesReference>, ToXContentFragment
A reference to bytes.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
-
Field Summary
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description BytesReference()
-
Method Summary
Modifier and Type Method Description static BytesReference
bytes(XContentBuilder xContentBuilder)
Convert anXContentBuilder
into a BytesReference.int
compareTo(BytesReference other)
boolean
equals(java.lang.Object other)
abstract byte
get(int index)
Returns the byte at the specified index.int
hashCode()
org.apache.lucene.util.BytesRefIterator
iterator()
Returns a BytesRefIterator for this BytesReference.abstract int
length()
The length.abstract long
ramBytesUsed()
The amount of memory used by this BytesReferenceabstract BytesReference
slice(int from, int length)
Slice the bytes from thefrom
index up tolength
.StreamInput
streamInput()
A stream input of the bytes.static byte[]
toBytes(BytesReference reference)
Returns a compact array from the given BytesReference.abstract org.apache.lucene.util.BytesRef
toBytesRef()
Converts to Lucene BytesRef.XContentBuilder
toXContent(XContentBuilder builder, ToXContent.Params params)
java.lang.String
utf8ToString()
Interprets the referenced bytes as UTF8 bytes, returning the resulting stringvoid
writeTo(java.io.OutputStream os)
Writes the bytes directly to the output stream.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Method Detail
-
bytes
public static BytesReference bytes(XContentBuilder xContentBuilder)
Convert anXContentBuilder
into a BytesReference. This method closes the builder, so no further fields may be added.
-
get
public abstract byte get(int index)
Returns the byte at the specified index. Need to be between 0 and length.
-
length
public abstract int length()
The length.
-
slice
public abstract BytesReference slice(int from, int length)
Slice the bytes from thefrom
index up tolength
.
-
ramBytesUsed
public abstract long ramBytesUsed()
The amount of memory used by this BytesReference
-
streamInput
public StreamInput streamInput() throws java.io.IOException
A stream input of the bytes.- Throws:
java.io.IOException
-
writeTo
public void writeTo(java.io.OutputStream os) throws java.io.IOException
Writes the bytes directly to the output stream.- Throws:
java.io.IOException
-
utf8ToString
public java.lang.String utf8ToString()
Interprets the referenced bytes as UTF8 bytes, returning the resulting string
-
toBytesRef
public abstract org.apache.lucene.util.BytesRef toBytesRef()
Converts to Lucene BytesRef.
-
iterator
public org.apache.lucene.util.BytesRefIterator iterator()
Returns a BytesRefIterator for this BytesReference. This method allows access to the internal pages of this reference without copying them. Use with care!- See Also:
BytesRefIterator
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toBytes
public static byte[] toBytes(BytesReference reference)
Returns a compact array from the given BytesReference. The returned array won't be copied unless necessary. If you need to modify the returned array useBytesRef.deepCopyOf(reference.toBytesRef()
instead
-
compareTo
public int compareTo(BytesReference other)
- Specified by:
compareTo
in interfacejava.lang.Comparable<BytesReference>
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
toXContent
in interfaceToXContent
- Throws:
java.io.IOException
-
-