Package org.ldk.structs
Class ChannelMonitorUpdate
- java.lang.Object
-
- org.ldk.structs.ChannelMonitorUpdate
-
public class ChannelMonitorUpdate extends Object
An update generated by the underlying channel itself which contains some new information the [`ChannelMonitor`] should be made aware of. Because this represents only a small number of updates to the underlying state, it is generally much smaller than a full [`ChannelMonitor`]. However, for large single commitment transaction updates (e.g. ones during which there are hundreds of HTLCs pending on the commitment transaction), a single update may reach upwards of 1 MiB in serialized size.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ChannelMonitorUpdate
clone()
Creates a copy of the ChannelMonitorUpdateboolean
eq(ChannelMonitorUpdate b)
Checks if two ChannelMonitorUpdates contain equal inner contents.boolean
equals(Object o)
protected void
finalize()
long
get_update_id()
The sequence number of this update.static Result_ChannelMonitorUpdateDecodeErrorZ
read(byte[] ser)
Read a ChannelMonitorUpdate from a byte array, created by ChannelMonitorUpdate_writevoid
set_update_id(long val)
The sequence number of this update.byte[]
write()
Serialize the ChannelMonitorUpdate object into a byte array which can be read by ChannelMonitorUpdate_read
-
-
-
Method Detail
-
finalize
protected void finalize() throws Throwable
-
get_update_id
public long get_update_id()
The sequence number of this update. Updates *must* be replayed in-order according to this sequence number (and updates may panic if they are not). The update_id values are strictly increasing and increase by one for each new update, with two exceptions specified below. This sequence number is also used to track up to which points updates which returned [`ChannelMonitorUpdateStatus::InProgress`] have been applied to all copies of a given ChannelMonitor when ChannelManager::channel_monitor_updated is called. The only instances we allow where update_id values are not strictly increasing have a special update ID of [`CLOSED_CHANNEL_UPDATE_ID`]. This update ID is used for updates that will force close the channel by broadcasting the latest commitment transaction or special post-force-close updates, like providing preimages necessary to claim outputs on the broadcast commitment transaction. See its docs for more details. [`ChannelMonitorUpdateStatus::InProgress`]: super::ChannelMonitorUpdateStatus::InProgress
-
set_update_id
public void set_update_id(long val)
The sequence number of this update. Updates *must* be replayed in-order according to this sequence number (and updates may panic if they are not). The update_id values are strictly increasing and increase by one for each new update, with two exceptions specified below. This sequence number is also used to track up to which points updates which returned [`ChannelMonitorUpdateStatus::InProgress`] have been applied to all copies of a given ChannelMonitor when ChannelManager::channel_monitor_updated is called. The only instances we allow where update_id values are not strictly increasing have a special update ID of [`CLOSED_CHANNEL_UPDATE_ID`]. This update ID is used for updates that will force close the channel by broadcasting the latest commitment transaction or special post-force-close updates, like providing preimages necessary to claim outputs on the broadcast commitment transaction. See its docs for more details. [`ChannelMonitorUpdateStatus::InProgress`]: super::ChannelMonitorUpdateStatus::InProgress
-
clone
public ChannelMonitorUpdate clone()
Creates a copy of the ChannelMonitorUpdate
-
eq
public boolean eq(ChannelMonitorUpdate b)
Checks if two ChannelMonitorUpdates contain equal inner contents. This ignores pointers and is_owned flags and looks at the values in fields. Two objects with NULL inner values will be considered "equal" here.
-
write
public byte[] write()
Serialize the ChannelMonitorUpdate object into a byte array which can be read by ChannelMonitorUpdate_read
-
read
public static Result_ChannelMonitorUpdateDecodeErrorZ read(byte[] ser)
Read a ChannelMonitorUpdate from a byte array, created by ChannelMonitorUpdate_write
-
-