001package org.unix4j.unix.xargs;
002
003import org.unix4j.variable.VariableContext;
004
005/**
006 * Stores items found by an {@link Itemizer}. The items are usually stored in
007 * a {@link VariableContext} in form of string variables.
008 */
009interface ItemStorage {
010        /**
011         * Stores the specified item. Storing an item may also trigger a command
012         * invocation if the max-args condition is fulfilled.
013         * 
014         * @param item the item to store
015         */
016        void storeItem(String item);
017        
018        /**
019         * Increments the line count by one. Usually called once for every line, but
020         * sometimes a line is logically combined with the next line and therefore
021         * not counted.
022         */
023        void incrementLineCount();
024}