Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 1&1 Internet AG, http://www.1and1.org
   *
   * This program is free software; you can redistribute it and/or modify
   * it under the terms of the GNU Lesser General Public License as published by
   * the Free Software Foundation; either version 2 of the License,
   * or (at your option) any later version.
   *
   * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  * See the GNU Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
 package net.sf.beezle.sushi.fs.svn;
 
 
 import java.net.URI;
 
 public class SvnFilesystem extends Filesystem {
     static {
         FSRepositoryFactory.setup();
         DAVRepositoryFactory.setup();
         System.setProperty("svnkit.upgradeWC""false"); // see https://wiki.svnkit.com/SVNKit_specific_system_properties
     }
 
 
     public SvnFilesystem(World worldString name) {
         super(worldnew Features(truefalsefalsefalsefalsefalse), name);
 
         this. = authenticationManager(nullnull);
     }
 
         return ;
     }
 
     public void setDefaultCredentials(String usernameString password) {
         setDefaultAuthenticationManager(authenticationManager(usernamepassword));
     }
 
     public void setDefaultAuthenticationManager(ISVNAuthenticationManager authenticationManager) {
         this. = authenticationManager;
     }
 
 
     @Override
     public SvnNode node(URI uriObject extrathrows NodeInstantiationException {
         String encodedSchemeSpecific;
         String encodedPath;
         String separator;
         String root;
         SVNRepository repository;
 
         if (extra != null) {
             throw new NodeInstantiationException(uri"unexpected extra argument: " + extra);
         }
         checkOpaque(uri);
         separator = ;
         encodedSchemeSpecific = uri.getRawSchemeSpecificPart();
         try {
             repository = repository(encodedSchemeSpecific);
             root = repository.getRepositoryRoot(true).toString();
             if (!encodedSchemeSpecific.startsWith(root)) {
                 throw new IllegalStateException(encodedSchemeSpecific + " vs " + root);
             }
             encodedPath = encodedSchemeSpecific.substring(root.length());
             if (encodedPath.length() > 0) {
                 if (!encodedPath.startsWith(separator)) {
                     throw new IllegalStateException(encodedSchemeSpecific + " vs " + root);
                 }
                 encodedPath = encodedPath.substring(separator.length());
             }
             if (encodedPath.endsWith(separator)) {
                 throw new NodeInstantiationException(uri"invalid tailing " + separator);
             }
             if (encodedPath.startsWith(separator)) {
                 throw new NodeInstantiationException(uri"invalid heading " + separator);
             }
             repository = repository(encodedSchemeSpecific.substring(0, encodedSchemeSpecific.length() - encodedPath.length()));
             return new SvnRoot(thisrepository).node(SVNEncodingUtil.uriDecode(encodedPath), null);
         } catch (SVNException e) {
            throw new NodeInstantiationException(urie.getMessage(), e);
        }
    }
    //--
    public SVNRepository repository(String urlstrthrows SVNException {
        ISVNAuthenticationManager authenticationManager;
        String userinfo;
        SVNURL url;
        int idx;
        String username;
        String password;
        url = SVNURL.parseURIEncoded(urlstr);
        userinfo = url.getUserInfo();
        if (userinfo != null) {
            idx = userinfo.indexOf(':');
            if (idx == -1) {
                username = userinfo;
                password = null;
            } else {
                username = userinfo.substring(0, idx);
                password = userinfo.substring(idx + 1);
            }
            authenticationManager = authenticationManager(usernamepassword);
        } else {
            authenticationManager =  == null ? authenticationManager(nullnull) : ;
        }
        return repository(urlauthenticationManager);
    }
    //--
    public static SVNRepository repository(SVNURL urlISVNAuthenticationManager authenticationManagerthrows SVNException {
        SVNRepository repository;
        repository = SVNRepositoryFactory.create(url);
        repository.setAuthenticationManager(authenticationManager);
        return repository;
    }
    public static ISVNAuthenticationManager authenticationManager(String usernameString password) {
        return SVNWCUtil.createDefaultAuthenticationManager(
                SVNWCUtil.getDefaultConfigurationDirectory(),
                usernamepassword,
                false /* do not store credentials, not even when configured */);
    }
New to GrepCode? Check out our FAQ X