in archiva-jarinfo/archiva-jarinfo-cli/src/main/java/org/apache/archiva/jarinfo/bundler/JarInfoBundlerCli.java [85:141]
private void execute( String[] args )
{
CommandLineParser parser = new GnuParser();
try
{
CommandLine cmdline = parser.parse( getOptions(), args );
/* Ignore Hidden Directories */
IOFileFilter ignoreHiddenFilter = FileFilterUtils.andFileFilter( FileFilterUtils.directoryFileFilter(),
HiddenFileFilter.VISIBLE );
/* Ignore SCM dirs */
IOFileFilter ignoreSCM = FileFilterUtils.notFileFilter( new NameFileFilter( new String[] {
".svn",
"CVS",
"SCCS",
".arch-ids",
".bzr" } ) );
IOFileFilter directoryFilter = FileFilterUtils.andFileFilter( ignoreHiddenFilter, ignoreSCM );
/* Only interested in files ending in JAR */
IOFileFilter jarFilter = FileFilterUtils.suffixFileFilter( ".jar" );
IOFileFilter notJavadocOrSourceFilter = FileFilterUtils.notFileFilter( new SuffixFileFilter( new String[] {
"-sources.jar",
"-javadoc.jar" } ) );
IOFileFilter jarBinaryFilter = FileFilterUtils.andFileFilter( jarFilter, notJavadocOrSourceFilter );
JarInfoBundler bundler = new JarInfoBundler( directoryFilter, jarBinaryFilter, -1 );
// TODO: log output dir?
bundler.setOutputDir( new File( cmdline.getOptionValue( OPT_JARINFO_OUTPUT_DIR ) ) );
bundler.setRepoDir( new File( cmdline.getOptionValue( OPT_REPO_DIR ) ) );
bundler.setRepoId( cmdline.getOptionValue( OPT_REPO_ID ) );
bundler.setRepoUrl( cmdline.getOptionValue( OPT_REPO_URL ) );
if ( cmdline.hasOption( OPT_TIMESTAMP ) )
{
bundler.setTimestamp( cmdline.getOptionValue( OPT_TIMESTAMP ) );
}
bundler.begin();
}
catch ( MissingOptionException e )
{
System.err.println( "ERROR: " + e.getMessage() );
showHelp( options );
}
catch ( ParseException e )
{
showHelp( options );
e.printStackTrace( System.err );
}
catch ( Throwable t )
{
t.printStackTrace( System.err );
}
}