package com.capgemini.reports.bomlineholder.processor;

import com.capgemini.reports.bomlineholder.BOMLineHolder;

import java.io.Serializable;

/**
 * Processes a {@link BOMLineHolder}, altering its content.
 */
public interface IBOMLineHolderProcessor extends Serializable {

    /**
     * Unit element of work of the Processor.<br>
     * This method is called on each BomLineHolder if the {@link BOMLineHolder#process(IBOMLineHolderProcessor)} method is used on the Top BomLineHolder.
     *
     * @param aBomLineHolder
     */
    void process(final BOMLineHolder aBomLineHolder);

}
