SVNRepositoryLocation location = null;
SVNRepositoryLocation location;
    public static void main(String[] args) {        /*         * Default values:         */        String url = "svn://localhost/rep/";        String name = "anonymous";        String password = "anonymous";        long startRevision = 0;        long endRevision = -1;        /*         * Initializes the library (it must be done before ever using the         * library itself)         */        setupLibrary();        if (args != null) {            /*             * Obtains a repository location URL             */            url = (args.length >= 1) ? args[0] : url;            /*             * Obtains the start point of the revisions range             */            startRevision = (args.length >= 2) ? Long.parseLong(args[1])                    : startRevision;            /*             * Obtains the end point of the revisions range             */            endRevision = (args.length >= 3) ? Long.parseLong(args[2])                    : endRevision;            /*             * Obtains an account name (will be used to authenticate the user to             * the server)             */            name = (args.length >= 4) ? args[3] : name;            /*             * Obtains a password             */            password = (args.length >= 5) ? args[4] : password;        }        SVNRepositoryLocation location = null;        SVNRepository repository = null;        try {            /*             * Parses the URL string and creates an SVNRepositoryLocation which             * represents the repository location - it can be any versioned             * entry inside the repository.             */            location = SVNRepositoryLocation.parseURL(url);            /*             * Creates an instance of SVNRepository to work with the repository.             * All user's requests to the repository are relative to the             * repository location used to create this SVNRepository.             */            repository = SVNRepositoryFactory.create(location);        } catch (SVNException svne) {            /*             * Perhaps a malformed URL is the cause of this exception.             */            System.err                    .println("error while creating an SVNRepository for the location '"                            + url + "': " + svne.getMessage());            System.exit(1);        }        /*         * Creates a usre's credentials provider.         */        ISVNCredentialsProvider scp = new SVNSimpleCredentialsProvider(name,                password);        /*         * Sets the provider of the user's credentials that will be used to         * authenticate the user to the server (if needed) during operations         * handled by the SVNRepository.         */        repository.setCredentialsProvider(scp);        Collection logEntries = null;        try {            logEntries = repository.log(new String[] { "" }, null,                    startRevision, endRevision, true, true);        } catch (SVNException svne) {            svne.printStackTrace();            System.exit(1);        }        for (Iterator entries = logEntries.iterator(); entries.hasNext();) {            SVNLogEntry logEntry = (SVNLogEntry) entries.next();            System.out.println("---------------------------------------------");            System.out.println("revision: " + logEntry.getRevision());            System.out.println("author: " + logEntry.getAuthor());            System.out.println("date: " + logEntry.getDate());            System.out.println("log message: " + logEntry.getMessage());            if (logEntry.getChangedPaths().size() > 0) {                System.out.println();                System.out.println("changed paths:");                Set changedPathsSet = logEntry.getChangedPaths().keySet();                for (Iterator changedPaths = changedPathsSet.iterator(); changedPaths                        .hasNext();) {                    SVNLogEntryPath entryPath = (SVNLogEntryPath) logEntry                            .getChangedPaths().get(changedPaths.next());                    System.out.println(" "                            + entryPath.getType()                            + "	"                            + entryPath.getPath()                            + ((entryPath.getCopyPath() != null) ? " (from "                                    + entryPath.getCopyPath() + " revision "                                    + entryPath.getCopyRevision() + ")" : ""));                }            }        }    }