Top Description Fields Constructors Methods
org.apache.poi.ddf

public final Class EscherBSERecord

extends EscherRecord
Class Inheritance
Imports
java.util.Collections, .LinkedHashMap, .Map, java.util.function.Supplier, org.apache.poi.sl.usermodel.PictureData.PictureType, org.apache.poi.util.IOUtils, .LittleEndian

The BSE record is related closely to the EscherBlipRecord and stores extra information about the blip. A blip record is actually stored inside the BSE record even though the BSE record isn't actually a container record.
See Also
EscherBlipRecord

Field Summary

Modifier and TypeField and Description
private byte[]
private static final int
private byte
private byte
private EscherBlipRecord
private byte
private byte
private final byte[]
private short
private int
private int
private int
private byte
private byte
private static int
public static final short

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
public EscherBSERecord
public int
fillFields(byte[]
The byte array containing the serialized escher records.
data
,
int
The offset into the byte array.
offset
,
EscherRecordFactory
A factory for creating new escher records.
recordFactory
)

Implements abstract org.apache.poi.ddf.EscherRecord.fillFields.

The contract of this method is to deserialize an escher record including its children.

public EscherBlipRecord
public byte

Returns:

MacOS blip type
getBlipTypeMacOS
()

The expected blip type under MacOS (failure to match this blip type will result in Excel converting to this format).

public byte

Returns:

win32 blip type
getBlipTypeWin32
()

The expected blip type under windows (failure to match this blip type will result in Excel converting to this format).

public Map<String, Supplier<?>>
public Enum<E extends Enum<E>>
public static int

Returns:

the max record length allowed for EscherBSERecord
getMaxRecordLength
()

public byte

Returns:

the blip name length
getName
()

The length in characters of the blip name.

public int

Returns:

the file offset
getOffset
()

File offset in the delay stream.

public PictureData.PictureType
public PictureData.PictureType
public String
getRecordName()

Implements abstract org.apache.poi.ddf.EscherRecord.getRecordName.

Subclasses should return the short name for this escher record.

public int
getRecordSize()

Implements abstract org.apache.poi.ddf.EscherRecord.getRecordSize.

Subclasses should effeciently return the number of bytes required to serialize the record.

public int

Returns:

the reference count
getRef
()

The reference count of this blip.

public byte[]

Returns:

the remaining bytes
getRemainingData
()

Any remaining data in this record.

public int

Returns:

the blip size
getSize
()

Blip size in stream.

public short

Returns:

an unknown tag
getTag
()

unused

public byte[]

Returns:

16 byte MD4 checksum
getUid
()

16 byte MD4 checksum.

public byte
public byte
public byte

Returns:

the blip usage
getUsage
()

Defines the way this blip is used.

public int
serialize(int
the offset within the byte array
offset
,
byte[]
the data array to serialize to
data
,
EscherSerializationListener
a listener for begin and end serialization events. This is useful because the serialization is hierarchical/recursive and sometimes you need to be able break into that.
listener
)

Implements abstract org.apache.poi.ddf.EscherRecord.serialize.

Serializes the record to an existing byte array.

public void
public void
setBlipTypeMacOS(byte
MacOS blip type
blipTypeMacOS
)

Set the expected MacOS blip type

public void
setBlipTypeWin32(byte
win32 blip type
blipTypeWin32
)

Set the expected win32 blip type

public static void
setMaxRecordLength(int
the max record length allowed for EscherBSERecord
length
)

public void
setName(byte
the blip name length
name
)

The length in characters of the blip name.

public void
setOffset(int
the file offset
offset
)

File offset in the delay stream.

public void
setRef(int
the reference count
ref
)

The reference count of this blip.

public void
setRemainingData(byte[]
the remaining bytes
remainingData
)

Any remaining data in this record.

public void
setSize(int
blip size
size
)

Blip size in stream.

public void
setTag(short
unknown tag
tag
)

unused

public void
setUid(byte[]
16 byte MD4 checksum
uid
)

16 byte MD4 checksum.

public void
setUnused2(byte unused2)

public void
setUnused3(byte unused3)

public void
setUsage(byte
the blip usae
usage
)

Defines the way this blip is used.

Inherited from org.apache.poi.ddf.EscherRecord:
displayfillFieldsgetChildgetChildRecordsgetGenericChildrengetInstancegetOptionsgetRecordIdgetVersionisContainerRecordreadHeaderreadInstanceserializeserializesetChildRecordssetInstancesetOptionssetRecordIdsetVersiontoStringtoXmltoXml

Field Detail

_remainingDataback to summary
private byte[] _remainingData
DEFAULT_MAX_RECORD_LENGTHback to summary
private static final int DEFAULT_MAX_RECORD_LENGTH
field_10_unused2back to summary
private byte field_10_unused2
field_11_unused3back to summary
private byte field_11_unused3
field_12_blipRecordback to summary
private EscherBlipRecord field_12_blipRecord
field_1_blipTypeWin32back to summary
private byte field_1_blipTypeWin32
field_2_blipTypeMacOSback to summary
private byte field_2_blipTypeMacOS
field_3_uidback to summary
private final byte[] field_3_uid
field_4_tagback to summary
private short field_4_tag
field_5_sizeback to summary
private int field_5_size
field_6_refback to summary
private int field_6_ref
field_7_offsetback to summary
private int field_7_offset
field_8_usageback to summary
private byte field_8_usage
field_9_nameback to summary
private byte field_9_name
MAX_RECORD_LENGTHback to summary
private static int MAX_RECORD_LENGTH
RECORD_IDback to summary
public static final short RECORD_ID

Constructor Detail

EscherBSERecordback to summary
public EscherBSERecord()
EscherBSERecordback to summary
public EscherBSERecord(EscherBSERecord other)

Method Detail

copyback to summary
public EscherBSERecord copy()

Implements abstract org.apache.poi.ddf.EscherRecord.copy.

Implements org.apache.poi.common.Duplicatable.copy.

Returns:EscherBSERecord

Doc from org.apache.poi.common.Duplicatable.copy.

a deep copy of the implementing class / instance

Annotations
@Override
fillFieldsback to summary
public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)

Implements abstract org.apache.poi.ddf.EscherRecord.fillFields.

Doc from org.apache.poi.ddf.EscherRecord.fillFields.

The contract of this method is to deserialize an escher record including its children.

Parameters
data:byte[]

The byte array containing the serialized escher records.

offset:int

The offset into the byte array.

recordFactory:EscherRecordFactory

A factory for creating new escher records.

Returns:int

The number of bytes written.

Annotations
@Override
getBlipRecordback to summary
public EscherBlipRecord getBlipRecord()
getBlipTypeMacOSback to summary
public byte getBlipTypeMacOS()

The expected blip type under MacOS (failure to match this blip type will result in Excel converting to this format).

Returns:byte

MacOS blip type

getBlipTypeWin32back to summary
public byte getBlipTypeWin32()

The expected blip type under windows (failure to match this blip type will result in Excel converting to this format).

Returns:byte

win32 blip type

getGenericPropertiesback to summary
public Map<String, Supplier<?>> getGenericProperties()

Overrides org.apache.poi.ddf.EscherRecord.getGenericProperties.

Implements org.apache.poi.common.usermodel.GenericRecord.getGenericProperties.

Annotations
@Override
getGenericRecordTypeback to summary
public Enum<E extends Enum<E>> getGenericRecordType()

Overrides default org.apache.poi.common.usermodel.GenericRecord.getGenericRecordType.

Annotations
@Override
getMaxRecordLengthback to summary
public static int getMaxRecordLength()
Returns:int

the max record length allowed for EscherBSERecord

getNameback to summary
public byte getName()

The length in characters of the blip name.

Returns:byte

the blip name length

getOffsetback to summary
public int getOffset()

File offset in the delay stream.

Returns:int

the file offset

getPictureTypeMacOSback to summary
public PictureData.PictureType getPictureTypeMacOS()
getPictureTypeWin32back to summary
public PictureData.PictureType getPictureTypeWin32()
getRecordNameback to summary
public String getRecordName()

Implements abstract org.apache.poi.ddf.EscherRecord.getRecordName.

Doc from org.apache.poi.ddf.EscherRecord.getRecordName.

Subclasses should return the short name for this escher record.

Returns:String

the short name for this escher record

Annotations
@Override
getRecordSizeback to summary
public int getRecordSize()

Implements abstract org.apache.poi.ddf.EscherRecord.getRecordSize.

Doc from org.apache.poi.ddf.EscherRecord.getRecordSize.

Subclasses should effeciently return the number of bytes required to serialize the record.

Returns:int

number of bytes

Annotations
@Override
getRefback to summary
public int getRef()

The reference count of this blip.

Returns:int

the reference count

getRemainingDataback to summary
public byte[] getRemainingData()

Any remaining data in this record.

Returns:byte[]

the remaining bytes

getSizeback to summary
public int getSize()

Blip size in stream.

Returns:int

the blip size

getTagback to summary
public short getTag()

unused

Returns:short

an unknown tag

getUidback to summary
public byte[] getUid()

16 byte MD4 checksum.

Returns:byte[]

16 byte MD4 checksum

getUnused2back to summary
public byte getUnused2()
getUnused3back to summary
public byte getUnused3()
getUsageback to summary
public byte getUsage()

Defines the way this blip is used.

Returns:byte

the blip usage

serializeback to summary
public int serialize(int offset, byte[] data, EscherSerializationListener listener)

Implements abstract org.apache.poi.ddf.EscherRecord.serialize.

Doc from org.apache.poi.ddf.EscherRecord.serialize.

Serializes the record to an existing byte array.

Parameters
offset:int

the offset within the byte array

data:byte[]

the data array to serialize to

listener:EscherSerializationListener

a listener for begin and end serialization events. This is useful because the serialization is hierarchical/recursive and sometimes you need to be able break into that.

Returns:int

the number of bytes written.

Annotations
@Override
setBlipRecordback to summary
public void setBlipRecord(EscherBlipRecord blipRecord)
setBlipTypeMacOSback to summary
public void setBlipTypeMacOS(byte blipTypeMacOS)

Set the expected MacOS blip type

Parameters
blipTypeMacOS:byte

MacOS blip type

setBlipTypeWin32back to summary
public void setBlipTypeWin32(byte blipTypeWin32)

Set the expected win32 blip type

Parameters
blipTypeWin32:byte

win32 blip type

setMaxRecordLengthback to summary
public static void setMaxRecordLength(int length)
Parameters
length:int

the max record length allowed for EscherBSERecord

setNameback to summary
public void setName(byte name)

The length in characters of the blip name.

Parameters
name:byte

the blip name length

setOffsetback to summary
public void setOffset(int offset)

File offset in the delay stream.

Parameters
offset:int

the file offset

setRefback to summary
public void setRef(int ref)

The reference count of this blip.

Parameters
ref:int

the reference count

setRemainingDataback to summary
public void setRemainingData(byte[] remainingData)

Any remaining data in this record.

Parameters
remainingData:byte[]

the remaining bytes

setSizeback to summary
public void setSize(int size)

Blip size in stream.

Parameters
size:int

blip size

setTagback to summary
public void setTag(short tag)

unused

Parameters
tag:short

unknown tag

setUidback to summary
public void setUid(byte[] uid)

16 byte MD4 checksum.

Parameters
uid:byte[]

16 byte MD4 checksum

setUnused2back to summary
public void setUnused2(byte unused2)
setUnused3back to summary
public void setUnused3(byte unused3)
setUsageback to summary
public void setUsage(byte usage)

Defines the way this blip is used.

Parameters
usage:byte

the blip usae