Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResolver.java URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResolver.java?view=diff&rev=544459&r1=544458&r2=544459 ============================================================================== --- incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResolver.java (original) +++ incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResolver.java Tue Jun 5 05:02:27 2007 @@ -46,21 +46,24 @@ import org.apache.ivy.plugins.resolver.util.HasLatestStrategy; import org.apache.ivy.util.Message; - /** * This abstract resolver only provides handling for resolver name */ -public abstract class AbstractResolver implements DependencyResolver, IvySettingsAware, HasLatestStrategy { +public abstract class AbstractResolver implements DependencyResolver, IvySettingsAware, + HasLatestStrategy { /** - * True if parsed ivy files should be validated against xsd, false if they should not, - * null if default behaviour should be used + * True if parsed ivy files should be validated against xsd, false if they should not, null if + * default behaviour should be used */ private Boolean _validate = null; + private String _name; + private String _changingPattern; + private String _changingMatcherName = PatternMatcher.EXACT_OR_REGEXP; - + private IvySettings _settings; /** @@ -79,12 +82,12 @@ public IvySettings getSettings() { return _settings; - } + } public void setSettings(IvySettings ivy) { _settings = ivy; } - + public String getName() { return _name; } @@ -93,10 +96,11 @@ _name = name; } - /** * this method should remove sensitive information from a location to be displayed in a log - * @param name location + * + * @param name + * location * @return location with sensitive data replaced by stars */ public String hidePassword(String name) { @@ -112,36 +116,37 @@ } public boolean isValidate() { - return _validate == null ? true: _validate.booleanValue(); + return _validate == null ? true : _validate.booleanValue(); } - public void setValidate(boolean validate) { _validate = Boolean.valueOf(validate); } - protected void checkInterrupted() { - IvyContext.getContext().getIvy().checkInterrupted(); - } + IvyContext.getContext().getIvy().checkInterrupted(); + } public void reportFailure() { - Message.verbose("no failure report implemented by "+getName()); + Message.verbose("no failure report implemented by " + getName()); } public void reportFailure(Artifact art) { - Message.verbose("no failure report implemented by "+getName()); + Message.verbose("no failure report implemented by " + getName()); } public String[] listTokenValues(String token, Map otherTokenValues) { - return new String[0]; + return new String[0]; } + public OrganisationEntry[] listOrganisations() { return new OrganisationEntry[0]; } + public ModuleEntry[] listModules(OrganisationEntry org) { return new ModuleEntry[0]; } + public RevisionEntry[] listRevisions(ModuleEntry module) { return new RevisionEntry[0]; } @@ -149,54 +154,57 @@ public String toString() { return getName(); } + public void dumpSettings() { - Message.verbose("\t"+getName()+" ["+getTypeName()+"]"); - Message.debug("\t\tchangingPattern: "+getChangingPattern()); - Message.debug("\t\tchangingMatcher: "+getChangingMatcherName()); + Message.verbose("\t" + getName() + " [" + getTypeName() + "]"); + Message.debug("\t\tchangingPattern: " + getChangingPattern()); + Message.debug("\t\tchangingMatcher: " + getChangingMatcherName()); } public String getTypeName() { return getClass().getName(); } + /** - * Default implementation actually download the artifact - * Subclasses should overwrite this to avoid the download + * Default implementation actually download the artifact Subclasses should overwrite this to + * avoid the download */ public boolean exists(Artifact artifact) { - DownloadReport dr = download(new Artifact[] {artifact}, new DownloadOptions(getSettings(), new CacheManager(getSettings(), getSettings().getDefaultCache()), null, true)); + DownloadReport dr = download(new Artifact[] {artifact}, new DownloadOptions(getSettings(), + new CacheManager(getSettings(), getSettings().getDefaultCache()), null, true)); ArtifactDownloadReport adr = dr.getArtifactReport(artifact); return adr.getDownloadStatus() != DownloadStatus.FAILED; } - - public LatestStrategy getLatestStrategy() { + + public LatestStrategy getLatestStrategy() { if (_latestStrategy == null) { if (getSettings() != null) { if (_latestStrategyName != null && !"default".equals(_latestStrategyName)) { _latestStrategy = getSettings().getLatestStrategy(_latestStrategyName); if (_latestStrategy == null) { - Message.error("unknown latest strategy: "+_latestStrategyName); + Message.error("unknown latest strategy: " + _latestStrategyName); _latestStrategy = getSettings().getDefaultLatestStrategy(); } } else { _latestStrategy = getSettings().getDefaultLatestStrategy(); - Message.debug(getName()+": no latest strategy defined: using default"); + Message.debug(getName() + ": no latest strategy defined: using default"); } } else { - throw new IllegalStateException("no ivy instance found: impossible to get a latest strategy without ivy instance"); + throw new IllegalStateException( + "no ivy instance found: impossible to get a latest strategy without ivy instance"); } } return _latestStrategy; } - public void setLatestStrategy(LatestStrategy latestStrategy) { _latestStrategy = latestStrategy; - } + } public void setLatest(String strategyName) { _latestStrategyName = strategyName; - } - + } + public String getLatest() { if (_latestStrategyName == null) { _latestStrategyName = "default"; @@ -204,32 +212,32 @@ return _latestStrategyName; } - public Namespace getNamespace() { + public Namespace getNamespace() { if (_namespace == null) { if (getSettings() != null) { if (_namespaceName != null) { _namespace = getSettings().getNamespace(_namespaceName); if (_namespace == null) { - Message.error("unknown namespace: "+_namespaceName); + Message.error("unknown namespace: " + _namespaceName); _namespace = getSettings().getSystemNamespace(); } } else { _namespace = getSettings().getSystemNamespace(); - Message.debug(getName()+": no namespace defined: using system"); + Message.debug(getName() + ": no namespace defined: using system"); } } else { - Message.verbose(getName()+": no namespace defined nor ivy instance: using system namespace"); + Message.verbose(getName() + + ": no namespace defined nor ivy instance: using system namespace"); _namespace = Namespace.SYSTEM_NAMESPACE; } } return _namespace; } - + public void setNamespace(String namespaceName) { _namespaceName = namespaceName; - } + } - // Namespace conversion methods protected ModuleDescriptor toSystem(ModuleDescriptor md) { return NameSpaceHelper.toSystem(md, getNamespace()); @@ -260,17 +268,18 @@ } protected ResolvedModuleRevision findModuleInCache(ResolveData data, ModuleRevisionId mrid) { - ResolvedModuleRevision moduleFromCache = data.getCacheManager().findModuleInCache(toSystem(mrid), doValidate(data)); + ResolvedModuleRevision moduleFromCache = data.getCacheManager().findModuleInCache( + toSystem(mrid), doValidate(data)); if (moduleFromCache == null) { return null; } - if ((getName() == null ? - moduleFromCache.getResolver().getName() == null : - moduleFromCache.getResolver() == null ? false : - getName().equals(moduleFromCache.getResolver().getName()))) { + if ((getName() == null ? moduleFromCache.getResolver().getName() == null : moduleFromCache + .getResolver() == null ? false : getName().equals( + moduleFromCache.getResolver().getName()))) { return moduleFromCache; } else { - Message.debug("found module in cache but with a different resolver: discarding: "+moduleFromCache); + Message.debug("found module in cache but with a different resolver: discarding: " + + moduleFromCache); return null; } } @@ -297,7 +306,8 @@ } PatternMatcher matcher = _settings.getMatcher(_changingMatcherName); if (matcher == null) { - throw new IllegalStateException("unknown matcher '"+_changingMatcherName+"'. It is set as changing matcher in "+this); + throw new IllegalStateException("unknown matcher '" + _changingMatcherName + + "'. It is set as changing matcher in " + this); } return matcher.getMatcher(_changingPattern); }
Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResourceResolver.java URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResourceResolver.java?view=diff&rev=544459&r1=544458&r2=544459 ============================================================================== --- incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResourceResolver.java (original) +++ incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractResourceResolver.java Tue Jun 5 05:02:27 2007 @@ -43,24 +43,24 @@ import org.apache.ivy.plugins.version.VersionMatcher; import org.apache.ivy.util.Message; - /** * */ public abstract class AbstractResourceResolver extends BasicResolver { - + private static final Map IVY_ARTIFACT_ATTRIBUTES = new HashMap(); static { IVY_ARTIFACT_ATTRIBUTES.put(IvyPatternHelper.ARTIFACT_KEY, "ivy"); IVY_ARTIFACT_ATTRIBUTES.put(IvyPatternHelper.TYPE_KEY, "ivy"); IVY_ARTIFACT_ATTRIBUTES.put(IvyPatternHelper.EXT_KEY, "xml"); } - + private List _ivyPatterns = new ArrayList(); // List (String pattern) - private List _artifactPatterns = new ArrayList(); // List (String pattern) + + private List _artifactPatterns = new ArrayList(); // List (String pattern) + private boolean _m2compatible = false; - public AbstractResourceResolver() { } @@ -69,98 +69,105 @@ if (isM2compatible()) { mrid = convertM2IdForResourceSearch(mrid); } - return findResourceUsingPatterns(mrid, _ivyPatterns, DefaultArtifact.newIvyArtifact(mrid, data.getDate()), getRMDParser(dd, data), data.getDate()); + return findResourceUsingPatterns(mrid, _ivyPatterns, DefaultArtifact.newIvyArtifact(mrid, + data.getDate()), getRMDParser(dd, data), data.getDate()); } - protected ResolvedResource findArtifactRef(Artifact artifact, Date date) { + protected ResolvedResource findArtifactRef(Artifact artifact, Date date) { ModuleRevisionId mrid = artifact.getModuleRevisionId(); if (isM2compatible()) { mrid = convertM2IdForResourceSearch(mrid); } - return findResourceUsingPatterns(mrid, _artifactPatterns, artifact, getDefaultRMDParser(artifact.getModuleRevisionId().getModuleId()), date); + return findResourceUsingPatterns(mrid, _artifactPatterns, artifact, + getDefaultRMDParser(artifact.getModuleRevisionId().getModuleId()), date); } - protected ResolvedResource findResourceUsingPatterns(ModuleRevisionId moduleRevision, List patternList, Artifact artifact, ResourceMDParser rmdparser, Date date) { + protected ResolvedResource findResourceUsingPatterns(ModuleRevisionId moduleRevision, + List patternList, Artifact artifact, ResourceMDParser rmdparser, Date date) { ResolvedResource rres = null; - + List resolvedResources = new ArrayList(); boolean dynamic = getSettings().getVersionMatcher().isDynamic(moduleRevision); boolean stop = false; for (Iterator iter = patternList.iterator(); iter.hasNext() && !stop;) { - String pattern = (String)iter.next(); + String pattern = (String) iter.next(); rres = findResourceUsingPattern(moduleRevision, pattern, artifact, rmdparser, date); if (rres != null) { - resolvedResources.add(rres); - stop = !dynamic; // stop iterating if we are not searching a dynamic revision + resolvedResources.add(rres); + stop = !dynamic; // stop iterating if we are not searching a dynamic revision } } - + if (resolvedResources.size() > 1) { - ResolvedResource[] rress = (ResolvedResource[]) resolvedResources.toArray(new ResolvedResource[resolvedResources.size()]); - rres = findResource(rress, getName(), getLatestStrategy(), getSettings().getVersionMatcher(), rmdparser, moduleRevision, date); + ResolvedResource[] rress = (ResolvedResource[]) resolvedResources + .toArray(new ResolvedResource[resolvedResources.size()]); + rres = findResource(rress, getName(), getLatestStrategy(), getSettings() + .getVersionMatcher(), rmdparser, moduleRevision, date); } - + return rres; } - - protected abstract ResolvedResource findResourceUsingPattern(ModuleRevisionId mrid, String pattern, Artifact artifact, ResourceMDParser rmdparser, Date date); - public static ResolvedResource findResource( - ResolvedResource[] rress, - String name, - LatestStrategy strategy, - VersionMatcher versionMatcher, - ResourceMDParser rmdparser, - ModuleRevisionId mrid, - Date date) { - ResolvedResource found = null; - List sorted = strategy.sort(rress); - List rejected = new ArrayList(); - for (ListIterator iter = sorted.listIterator(sorted.size()); iter.hasPrevious();) { - ResolvedResource rres = (ResolvedResource) iter.previous(); - if ((date != null && rres.getLastModified() > date.getTime())) { - Message.verbose("\t"+name+": too young: "+rres); - rejected.add(rres.getRevision()+" ("+rres.getLastModified()+")"); - continue; - } - ModuleRevisionId foundMrid = ModuleRevisionId.newInstance(mrid, rres.getRevision()); - if (!versionMatcher.accept(mrid, foundMrid)) { - Message.debug("\t"+name+": rejected by version matcher: "+rres); + protected abstract ResolvedResource findResourceUsingPattern(ModuleRevisionId mrid, + String pattern, Artifact artifact, ResourceMDParser rmdparser, Date date); + + public static ResolvedResource findResource(ResolvedResource[] rress, String name, + LatestStrategy strategy, VersionMatcher versionMatcher, ResourceMDParser rmdparser, + ModuleRevisionId mrid, Date date) { + ResolvedResource found = null; + List sorted = strategy.sort(rress); + List rejected = new ArrayList(); + for (ListIterator iter = sorted.listIterator(sorted.size()); iter.hasPrevious();) { + ResolvedResource rres = (ResolvedResource) iter.previous(); + if ((date != null && rres.getLastModified() > date.getTime())) { + Message.verbose("\t" + name + ": too young: " + rres); + rejected.add(rres.getRevision() + " (" + rres.getLastModified() + ")"); + continue; + } + ModuleRevisionId foundMrid = ModuleRevisionId.newInstance(mrid, rres.getRevision()); + if (!versionMatcher.accept(mrid, foundMrid)) { + Message.debug("\t" + name + ": rejected by version matcher: " + rres); rejected.add(rres.getRevision()); - continue; - } - if (versionMatcher.needModuleDescriptor(mrid, foundMrid)) { - ResolvedResource r = rmdparser.parse(rres.getResource(), rres.getRevision()); - ModuleDescriptor md = ((MDResolvedResource)r).getResolvedModuleRevision().getDescriptor(); - if (md.isDefault()) { - Message.debug("\t"+name+": default md rejected by version matcher requiring module descriptor: "+rres); - rejected.add(rres.getRevision()+" (MD)"); - continue; - } else if (!versionMatcher.accept(mrid, md)) { - Message.debug("\t"+name+": md rejected by version matcher: "+rres); - rejected.add(rres.getRevision()+" (MD)"); - continue; - } else { - found = r; - } - } else { - found = rres; - } - - if (found != null) { - if (!found.getResource().exists()) { - Message.debug("\t"+name+": resource not reachable for "+mrid+": res="+found.getResource()); - logAttempt(found.getResource().toString()); - continue; - } - break; - } - } - if (found == null && !rejected.isEmpty()) { - logAttempt(rejected.toString()); - } - - return found; + continue; + } + if (versionMatcher.needModuleDescriptor(mrid, foundMrid)) { + ResolvedResource r = rmdparser.parse(rres.getResource(), rres.getRevision()); + ModuleDescriptor md = ((MDResolvedResource) r).getResolvedModuleRevision() + .getDescriptor(); + if (md.isDefault()) { + Message + .debug("\t" + + name + + ": default md rejected by version matcher requiring module descriptor: " + + rres); + rejected.add(rres.getRevision() + " (MD)"); + continue; + } else if (!versionMatcher.accept(mrid, md)) { + Message.debug("\t" + name + ": md rejected by version matcher: " + rres); + rejected.add(rres.getRevision() + " (MD)"); + continue; + } else { + found = r; + } + } else { + found = rres; + } + + if (found != null) { + if (!found.getResource().exists()) { + Message.debug("\t" + name + ": resource not reachable for " + mrid + ": res=" + + found.getResource()); + logAttempt(found.getResource().toString()); + continue; + } + break; + } + } + if (found == null && !rejected.isEmpty()) { + logAttempt(rejected.toString()); + } + + return found; } protected Collection findNames(Map tokenValues, String token) { @@ -182,11 +189,12 @@ getSettings().filterIgnore(names); return names; } - + protected Collection findArtifactNames(Map tokenValues, String token) { Collection names = new HashSet(); tokenValues = new HashMap(tokenValues); - tokenValues.put(IvyPatternHelper.ARTIFACT_KEY, tokenValues.get(IvyPatternHelper.MODULE_KEY)); + tokenValues + .put(IvyPatternHelper.ARTIFACT_KEY, tokenValues.get(IvyPatternHelper.MODULE_KEY)); tokenValues.put(IvyPatternHelper.TYPE_KEY, "jar"); tokenValues.put(IvyPatternHelper.EXT_KEY, "jar"); findTokenValues(names, getArtifactPatterns(), tokenValues, token); @@ -197,8 +205,10 @@ // should be overridden by subclasses wanting to have listing features protected void findTokenValues(Collection names, List patterns, Map tokenValues, String token) { } + /** * example of pattern : ~/Workspace/[module]/[module].ivy.xml + * * @param pattern */ public void addIvyPattern(String pattern) { @@ -208,7 +218,7 @@ public void addArtifactPattern(String pattern) { _artifactPatterns.add(pattern); } - + public List getIvyPatterns() { return Collections.unmodifiableList(_ivyPatterns); } @@ -216,9 +226,11 @@ public List getArtifactPatterns() { return Collections.unmodifiableList(_artifactPatterns); } + protected void setIvyPatterns(List ivyPatterns) { _ivyPatterns = ivyPatterns; } + protected void setArtifactPatterns(List artifactPatterns) { _artifactPatterns = artifactPatterns; } @@ -233,19 +245,19 @@ public void addConfiguredArtifact(IvyPattern p) { _artifactPatterns.add(p.getPattern()); } - + public void dumpSettings() { super.dumpSettings(); - Message.debug("\t\tm2compatible: "+isM2compatible()); + Message.debug("\t\tm2compatible: " + isM2compatible()); Message.debug("\t\tivy patterns:"); for (ListIterator iter = getIvyPatterns().listIterator(); iter.hasNext();) { - String p = (String)iter.next(); - Message.debug("\t\t\t"+p); + String p = (String) iter.next(); + Message.debug("\t\t\t" + p); } Message.debug("\t\tartifact patterns:"); for (ListIterator iter = getArtifactPatterns().listIterator(); iter.hasNext();) { - String p = (String)iter.next(); - Message.debug("\t\t\t"+p); + String p = (String) iter.next(); + Message.debug("\t\t\t" + p); } } @@ -261,7 +273,8 @@ if (mrid.getOrganisation().indexOf('.') == -1) { return mrid; } - return ModuleRevisionId.newInstance(mrid.getOrganisation().replace('.', '/'), mrid.getName(), mrid.getBranch(), mrid.getRevision(), mrid.getExtraAttributes()); + return ModuleRevisionId.newInstance(mrid.getOrganisation().replace('.', '/'), mrid + .getName(), mrid.getBranch(), mrid.getRevision(), mrid.getExtraAttributes()); } } Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractSshBasedResolver.java URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractSshBasedResolver.java?view=diff&rev=544459&r1=544458&r2=544459 ============================================================================== --- incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractSshBasedResolver.java (original) +++ incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractSshBasedResolver.java Tue Jun 5 05:02:27 2007 @@ -22,20 +22,16 @@ import org.apache.ivy.core.settings.IvySettings; import org.apache.ivy.plugins.repository.ssh.AbstractSshBasedRepository; - /** - * Abstract base class for all resolvers using SSH - * - * All necessary connection parameters can be set here via attributes. - * However all attributes defined in the pattern url of the resolver will have higher - * priority and will overwrite the values given here. To specify connection parameters - * in the pattern, you have to specify a full url and not just a path as pattern. - * e.g. pattern="/path/to/my/repos/[artifact].[ext]" will use all connection parameters - * from this class - * e.g. pattern="ssh://myserver.com/path/to/my/repos/[artifact].[ext]" will use all parameters - * from this class with the exception of the host, which will be "myserver.com" - * e.g. pattern="sftp://user:[EMAIL PROTECTED]:8022/path/to/my/repos/[artifact].[ext]" will - * use only the keyFile and keyFilePassword from this class (if needed). Rest will come from the url. + * Abstract base class for all resolvers using SSH All necessary connection parameters can be set + * here via attributes. However all attributes defined in the pattern url of the resolver will have + * higher priority and will overwrite the values given here. To specify connection parameters in the + * pattern, you have to specify a full url and not just a path as pattern. e.g. + * pattern="/path/to/my/repos/[artifact].[ext]" will use all connection parameters from this class + * e.g. pattern="ssh://myserver.com/path/to/my/repos/[artifact].[ext]" will use all parameters from + * this class with the exception of the host, which will be "myserver.com" e.g. + * pattern="sftp://user:[EMAIL PROTECTED]:8022/path/to/my/repos/[artifact].[ext]" will use only + * the keyFile and keyFilePassword from this class (if needed). Rest will come from the url. */ public abstract class AbstractSshBasedResolver extends RepositoryResolver { @@ -46,22 +42,23 @@ } private AbstractSshBasedRepository getSshBasedRepository() { - return ((AbstractSshBasedRepository)getRepository()); - } + return ((AbstractSshBasedRepository) getRepository()); + } /** * Sets the location of the Public Key file to use for authentication - * @param filePath full file path name + * + * @param filePath + * full file path name */ public void setKeyFile(String filePath) { - getSshBasedRepository().setKeyFile(new File(filePath)); + getSshBasedRepository().setKeyFile(new File(filePath)); } - /** - * Optional password file. If set the repository will use it as an encypted property file, to load - * username and passwd entries, and to store them if the user choose to do so. - * - * Defaults to user.dir/.ivy/[host].sftp.passwd, set it to null to disable this feature. + /** + * Optional password file. If set the repository will use it as an encypted property file, to + * load username and passwd entries, and to store them if the user choose to do so. Defaults to + * user.dir/.ivy/[host].sftp.passwd, set it to null to disable this feature. */ public void setPassfile(String passfile) { getSshBasedRepository().setPassFile(passfile == null ? null : new File(passfile)); @@ -71,61 +68,70 @@ public void setSettings(IvySettings settings) { super.setSettings(settings); if (!passfileSet) { - getSshBasedRepository().setPassFile(new File(settings.getDefaultIvyUserDir(), getSshBasedRepository().getHost()+".ssh.passwd")); + getSshBasedRepository().setPassFile( + new File(settings.getDefaultIvyUserDir(), getSshBasedRepository().getHost() + + ".ssh.passwd")); } } /** - * Sets the password to authenticate the user if password based login is used - * if no password is set and password based login is used, user will be prompted for it - * the password can also be set by using a full url for the pattern, like + * Sets the password to authenticate the user if password based login is used if no password is + * set and password based login is used, user will be prompted for it the password can also be + * set by using a full url for the pattern, like * "sftp://user:[EMAIL PROTECTED]/path/to/repos/[artifact].[ext]" - * @param password to use + * + * @param password + * to use */ public void setUserPassword(String password) { - getSshBasedRepository().setUserPassword(password); + getSshBasedRepository().setUserPassword(password); } /** - * Sets the password to use for decrypting key file (if it is encrypted) - * if no password is set and the keyfile is encrypted, the user will be prompted for the password - * if the keyfile is passwordless, this parameter will be ignored if given - * @param password to use + * Sets the password to use for decrypting key file (if it is encrypted) if no password is set + * and the keyfile is encrypted, the user will be prompted for the password if the keyfile is + * passwordless, this parameter will be ignored if given + * + * @param password + * to use */ public void setKeyFilePassword(String password) { getSshBasedRepository().setKeyFilePassword(password); } /** - * sets the user to use for the ssh communication - * the user can also be set by using a full url for the pattern, like - * "ssh://[EMAIL PROTECTED]/path/to/repos/[artifact].[ext]" - * @param user on the target system + * sets the user to use for the ssh communication the user can also be set by using a full url + * for the pattern, like "ssh://[EMAIL PROTECTED]/path/to/repos/[artifact].[ext]" + * + * @param user + * on the target system */ public void setUser(String user) { getSshBasedRepository().setUser(user); } /** - * sets the host to use for the ssh communication - * the host can also be set by using a full url for the pattern, like - * "ssh://myserver.com/path/to/repos/[artifact].[ext]" - * @param host of the target system + * sets the host to use for the ssh communication the host can also be set by using a full url + * for the pattern, like "ssh://myserver.com/path/to/repos/[artifact].[ext]" + * + * @param host + * of the target system */ public void setHost(String host) { getSshBasedRepository().setHost(host); } /** - * sets the port to use for the ssh communication - * port 22 is default - * the port can also be set by using a full url for the pattern, like + * sets the port to use for the ssh communication port 22 is default the port can also be set by + * using a full url for the pattern, like * "sftp://myserver.com:8022/path/to/repos/[artifact].[ext]" - * @param port of the target system + * + * @param port + * of the target system */ public void setPort(int port) { getSshBasedRepository().setPort(port); } - + abstract public String getTypeName(); }
