001    /*
002    
003      $Id: LocalPluginManager.java,v 1.2 2003/03/26 23:07:41 culdesac Exp $
004    
005    */
006    
007    package sharpster.client.localplugin;
008    
009    import java.util.LinkedList;
010    import sharpster.common.*;
011    
012    /**
013     * Class for parsing command line arguments with plug-in information.
014     * 
015     */
016    public class LocalPluginManager extends PluginManager {
017    
018        /**
019         * Creates a <code>PluginData</code> object from a command
020         * line argument.
021         */
022        public PluginData parseArguments(LinkedList args) {
023            if(args == null || args.size() == 0) {
024                PartOfFilePlugin plugin = getPluginFromName("default");
025                if(plugin == null) return null;
026                return plugin.parseArguments(null);
027            }
028            else {
029                String name = (String)args.getFirst();
030                PartOfFilePlugin plugin = getPluginFromName(name);
031                if(plugin == null) return null;
032                args.removeFirst();
033                return plugin.parseArguments(args);
034            }
035        }
036    }
037