Package org.exbin.xbup.core.block
Class XBEmptyBlock
- java.lang.Object
-
- org.exbin.xbup.core.block.XBEmptyBlock
-
- All Implemented Interfaces:
XBBlock
,XBPSequenceSerializable
,XBSerializable
@ParametersAreNonnullByDefault public class XBEmptyBlock extends java.lang.Object implements XBBlock, XBPSequenceSerializable
Read-only empty level 0 block.
-
-
Constructor Summary
Constructors Constructor Description XBEmptyBlock()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description UBNatural
getAttributeAt(int attributeIndex)
Gets attribute of given index / order.XBAttribute[]
getAttributes()
Gets array of attributes in order of appearance.int
getAttributesCount()
Gets count of attributes.org.exbin.auxiliary.paged_data.BinaryData
getBlockData()
Gets block data.java.io.InputStream
getData()
Gets block data.XBBlockDataMode
getDataMode()
Returns mode whether this block is data block.static XBEmptyBlock
getEmptyBlock()
XBBlock
getChildAt(int childIndex)
Gets child block of given index.XBBlock[]
getChildren()
Gets array of all children blocks.int
getChildrenCount()
Gets count of children.java.util.Optional<XBBlock>
getParentBlock()
Gets parent block or empty if block has no parent.XBBlockTerminationMode
getTerminationMode()
Returns whether this block is using sequence of children ended with termination block.void
serializeXB(XBPSequenceSerialHandler serializationHandler)
Performs dual-way serialization to XBUP protocol.
-
-
-
Method Detail
-
getParentBlock
@Nonnull public java.util.Optional<XBBlock> getParentBlock()
Description copied from interface:XBBlock
Gets parent block or empty if block has no parent.- Specified by:
getParentBlock
in interfaceXBBlock
- Returns:
- Parent block.
-
getTerminationMode
@Nonnull public XBBlockTerminationMode getTerminationMode()
Description copied from interface:XBBlock
Returns whether this block is using sequence of children ended with termination block.- Specified by:
getTerminationMode
in interfaceXBBlock
- Returns:
- termination mode
-
getDataMode
@Nonnull public XBBlockDataMode getDataMode()
Description copied from interface:XBBlock
Returns mode whether this block is data block.- Specified by:
getDataMode
in interfaceXBBlock
- Returns:
- data mode
-
getAttributes
@Nullable public XBAttribute[] getAttributes()
Description copied from interface:XBBlock
Gets array of attributes in order of appearance.- Specified by:
getAttributes
in interfaceXBBlock
- Returns:
- array of attributes
-
getAttributeAt
@Nullable public UBNatural getAttributeAt(int attributeIndex)
Description copied from interface:XBBlock
Gets attribute of given index / order.- Specified by:
getAttributeAt
in interfaceXBBlock
- Parameters:
attributeIndex
- index/order of attribute- Returns:
- attribute value
-
getAttributesCount
public int getAttributesCount()
Description copied from interface:XBBlock
Gets count of attributes.- Specified by:
getAttributesCount
in interfaceXBBlock
- Returns:
- count of attributes
-
getChildren
@Nullable public XBBlock[] getChildren()
Description copied from interface:XBBlock
Gets array of all children blocks.- Specified by:
getChildren
in interfaceXBBlock
- Returns:
- list of child blocks
-
getChildAt
@Nullable public XBBlock getChildAt(int childIndex)
Description copied from interface:XBBlock
Gets child block of given index.- Specified by:
getChildAt
in interfaceXBBlock
- Parameters:
childIndex
- index of child block- Returns:
- child block
-
getChildrenCount
public int getChildrenCount()
Description copied from interface:XBBlock
Gets count of children.- Specified by:
getChildrenCount
in interfaceXBBlock
- Returns:
- count of children
-
getData
@Nonnull public java.io.InputStream getData()
Description copied from interface:XBBlock
Gets block data.
-
getBlockData
@Nonnull public org.exbin.auxiliary.paged_data.BinaryData getBlockData()
Description copied from interface:XBBlock
Gets block data.- Specified by:
getBlockData
in interfaceXBBlock
- Returns:
- block data or throws invalid operation on non-data block
-
getEmptyBlock
@Nonnull public static XBEmptyBlock getEmptyBlock()
-
serializeXB
public void serializeXB(@Nonnull XBPSequenceSerialHandler serializationHandler) throws XBProcessingException, java.io.IOException
Description copied from interface:XBPSequenceSerializable
Performs dual-way serialization to XBUP protocol.- Specified by:
serializeXB
in interfaceXBPSequenceSerializable
- Parameters:
serializationHandler
- serialization resource- Throws:
XBProcessingException
- if proccesing problem encounteredjava.io.IOException
- if input/output problem encountered
-
-