Page: Parcel processing
2019-11-21 11:11
When node gets Parcel it will be processed by ParcelProcessor.
Parcel consist from two items (payment and payload) and each item will be processed via Item processor. What do ParcelProcessor see below.
Lifecycle
Parcel's processor download parcel or get it from constructor params;
then run
Node#checkItemInternal(HashId, HashId, Approvable, boolean, boolean, boolean)
for both payment and payload items, but withisCheckingForce
param set tofalse
for payload: payload checking wait for payment item will be processed (goes throughParcelProcessingState#PREPARING
,ParcelProcessingState#PAYMENT_CHECKING
,ParcelProcessingState#PAYMENT_POLLING
processing states);after payment have been processed payload is start checking (goes through
ParcelProcessingState#PAYLOAD_CHECKING
,ParcelProcessingState#PAYLOAD_POLLING
);finally parcel's processor removing (goes through
ParcelProcessingState#FINISHED
}, {@linkParcelProcessingState#NOT_EXIST
processing states).