Alien-SVN

 view release on metacpan or  search on metacpan

src/subversion/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java  view on Meta::CPAN

                    }
                }

                dirents.add(dirent);
            }

            public DirEntry[] getDirEntryArray()
            {
                return dirents.toArray(new DirEntry[dirents.size()]);
            }
        }

        MyListCallback callback = new MyListCallback();

        list(url, revision, pegRevision, Depth.infinityOrImmediates(recurse),
             DirEntry.Fields.all, false, callback);

        return callback.getDirEntryArray();
    }

    /**
     * @since 1.5
     */
    public void list(String url, Revision revision,
                            Revision pegRevision, int depth, int direntFields,
                            boolean fetchLocks, final ListCallback callback)
            throws ClientException
    {
        try
        {
            aSVNClient.list(url,
                         revision == null ? null : revision.toApache(),
                         pegRevision == null ? null : pegRevision.toApache(),
                         Depth.toADepth(depth), direntFields, fetchLocks,
        new org.apache.subversion.javahl.callback.ListCallback () {
            public void doEntry(org.apache.subversion.javahl.types.DirEntry dirent,
                                org.apache.subversion.javahl.types.Lock lock)
            {
                callback.doEntry(new DirEntry(dirent),
                                 lock == null ? null : new Lock(lock));
            }
                });
        }
        catch (org.apache.subversion.javahl.ClientException ex)
        {
            throw new ClientException(ex);
        }
    }

    /**
     * @since 1.0
     */
    public void username(String username)
    {
        aSVNClient.username(username);
    }

    /**
     * @since 1.0
     */
    public void password(String password)
    {
        aSVNClient.password(password);
    }

    private class PromptUser1Wrapper
        implements org.apache.subversion.javahl.callback.UserPasswordCallback
    {
        PromptUserPassword oldPrompt;
        PromptUserPassword2 oldPrompt2;
        PromptUserPassword3 oldPrompt3;

        PromptUser1Wrapper(PromptUserPassword prompt)
        {
            oldPrompt = prompt;

            /* This mirrors the insanity that was going on in the C++ layer
               prior to 1.7.  Don't ask, just pray it works. */
            if (prompt instanceof PromptUserPassword2)
              oldPrompt2 = (PromptUserPassword2) prompt;

            if (prompt instanceof PromptUserPassword3)
              oldPrompt3 = (PromptUserPassword3) prompt;
        }

        public String getPassword()
        {
            return oldPrompt.getPassword();
        }

        public String getUsername()
        {
            return oldPrompt.getUsername();
        }

        public String askQuestion(String realm, String question,
                                  boolean showAnswer)
        {
            return oldPrompt.askQuestion(realm, question, showAnswer);
        }

        public boolean askYesNo(String realm, String question,
                                boolean yesIsDefault)
        {
            return oldPrompt.askYesNo(realm, question, yesIsDefault);
        }

        public boolean prompt(String realm, String username)
        {
            return oldPrompt.prompt(realm, username);
        }

        public int askTrustSSLServer(String info, boolean allowPermanently)
        {
            if (oldPrompt2 != null)
                return oldPrompt2.askTrustSSLServer(info, allowPermanently);
            else
                return 0;
        }

        public boolean userAllowedSave()
        {
            return false;



( run in 1.769 second using v1.01-cache-2.11-cpan-98e64b0badf )