001package org.unix4j.unix.xargs;
002
003import org.unix4j.line.Line;
004
005/**
006 * Itemizes one or multiple lines and stores the found items in an
007 * {@link ItemStorage}.
008 */
009interface Itemizer {
010        /**
011         * Itemize the given line and stores all found items in the item storage. 
012         * 
013         * @param line
014         *            the line to itemize
015         * @param itemStorage
016         *            the storage for the found items
017         */
018        void itemizeLine(Line line, ItemStorage itemStorage);
019        
020        /**
021         * Called after the last line to flush remaining items.
022         * 
023         * @param itemStorage
024         *            the storage for the found items
025         */
026        void finish(ItemStorage itemStorage);
027}