mirror of https://github.com/apache/archiva.git
fix some problems in invoking search service
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@732674 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
9158c2f5dc
commit
d2190ff6a8
|
@ -27,7 +27,7 @@ import org.apache.archiva.web.xmlrpc.api.beans.Dependency;
|
||||||
|
|
||||||
import com.atlassian.xmlrpc.ServiceObject;
|
import com.atlassian.xmlrpc.ServiceObject;
|
||||||
|
|
||||||
@ServiceObject("Search")
|
@ServiceObject("SearchService")
|
||||||
public interface SearchService
|
public interface SearchService
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -20,7 +20,6 @@ package org.apache.archiva.web.xmlrpc.api.beans;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
import com.atlassian.xmlrpc.ServiceBean;
|
import com.atlassian.xmlrpc.ServiceBean;
|
||||||
import com.atlassian.xmlrpc.ServiceBeanField;
|
import com.atlassian.xmlrpc.ServiceBeanField;
|
||||||
|
@ -39,22 +38,22 @@ public class Artifact
|
||||||
|
|
||||||
private String type;
|
private String type;
|
||||||
|
|
||||||
private Date whenGathered;
|
//private Date whenGathered;
|
||||||
|
|
||||||
public Artifact()
|
public Artifact()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Artifact( String repositoryId, String groupId, String artifactId, String version,
|
public Artifact( String repositoryId, String groupId, String artifactId, String version, String type )
|
||||||
String type, Date whenGathered )
|
// String type, Date whenGathered )
|
||||||
{
|
{
|
||||||
this.repositoryId = repositoryId;
|
this.repositoryId = repositoryId;
|
||||||
this.groupId = groupId;
|
this.groupId = groupId;
|
||||||
this.artifactId = artifactId;
|
this.artifactId = artifactId;
|
||||||
this.version = version;
|
this.version = version;
|
||||||
this.type = type;
|
this.type = type;
|
||||||
this.whenGathered = whenGathered;
|
//this.whenGathered = whenGathered;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getGroupId()
|
public String getGroupId()
|
||||||
|
@ -77,10 +76,10 @@ public class Artifact
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Date getWhenGathered()
|
/*public Date getWhenGathered()
|
||||||
{
|
{
|
||||||
return whenGathered;
|
return whenGathered;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
@ServiceBeanField( "groupId" )
|
@ServiceBeanField( "groupId" )
|
||||||
public void setGroupId( String groupId )
|
public void setGroupId( String groupId )
|
||||||
|
@ -106,11 +105,11 @@ public class Artifact
|
||||||
this.type = type;
|
this.type = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ServiceBeanField( "whenGathered" )
|
/*@ServiceBeanField( "whenGathered" )
|
||||||
public void setWhenGathered( Date whenGathered )
|
public void setWhenGathered( Date whenGathered )
|
||||||
{
|
{
|
||||||
this.whenGathered = whenGathered;
|
this.whenGathered = whenGathered;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
public String getRepositoryId()
|
public String getRepositoryId()
|
||||||
{
|
{
|
||||||
|
|
|
@ -23,6 +23,8 @@ import java.net.URL;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.archiva.web.xmlrpc.api.AdministrationService;
|
import org.apache.archiva.web.xmlrpc.api.AdministrationService;
|
||||||
|
import org.apache.archiva.web.xmlrpc.api.SearchService;
|
||||||
|
import org.apache.archiva.web.xmlrpc.api.beans.Artifact;
|
||||||
import org.apache.archiva.web.xmlrpc.api.beans.ManagedRepository;
|
import org.apache.archiva.web.xmlrpc.api.beans.ManagedRepository;
|
||||||
import org.apache.archiva.web.xmlrpc.api.beans.RemoteRepository;
|
import org.apache.archiva.web.xmlrpc.api.beans.RemoteRepository;
|
||||||
|
|
||||||
|
@ -117,6 +119,23 @@ public class SampleClient
|
||||||
System.out.println( "\nDeleted artifact 'javax.activation:activation:1.1' from repository 'internal' : " +
|
System.out.println( "\nDeleted artifact 'javax.activation:activation:1.1' from repository 'internal' : " +
|
||||||
( (Boolean) success ).booleanValue() );
|
( (Boolean) success ).booleanValue() );
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* quick search */
|
||||||
|
/*
|
||||||
|
* NOTE: before enabling & invoking search service, make sure that the artifacts you're searching
|
||||||
|
* for has been indexed already in order to get results
|
||||||
|
*
|
||||||
|
SearchService searchService = binder.bind( SearchService.class, new URL( args[0] ), authnInfo );
|
||||||
|
List<Artifact> artifacts = searchService.quickSearch( "org" );
|
||||||
|
|
||||||
|
System.out.println( "\n************ Search Results for 'org' *************" );
|
||||||
|
for( Artifact artifact : artifacts )
|
||||||
|
{
|
||||||
|
System.out.println( "Artifact: " + artifact.getGroupId() + ":" + artifact.getArtifactId() +
|
||||||
|
":" + artifact.getVersion() );
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
}
|
}
|
||||||
catch ( BindingException e )
|
catch ( BindingException e )
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ import org.apache.archiva.web.xmlrpc.api.beans.Artifact;
|
||||||
import org.apache.archiva.web.xmlrpc.api.beans.Dependency;
|
import org.apache.archiva.web.xmlrpc.api.beans.Dependency;
|
||||||
import org.apache.archiva.web.xmlrpc.security.XmlRpcUserRepositories;
|
import org.apache.archiva.web.xmlrpc.security.XmlRpcUserRepositories;
|
||||||
import org.apache.maven.archiva.database.ArchivaDAO;
|
import org.apache.maven.archiva.database.ArchivaDAO;
|
||||||
|
import org.apache.maven.archiva.database.ArchivaDatabaseException;
|
||||||
import org.apache.maven.archiva.database.ArtifactDAO;
|
import org.apache.maven.archiva.database.ArtifactDAO;
|
||||||
import org.apache.maven.archiva.database.ObjectNotFoundException;
|
import org.apache.maven.archiva.database.ObjectNotFoundException;
|
||||||
import org.apache.maven.archiva.database.browsing.BrowsingResults;
|
import org.apache.maven.archiva.database.browsing.BrowsingResults;
|
||||||
|
@ -102,16 +103,28 @@ public class SearchServiceImpl
|
||||||
for( SearchResultHit hit : hits )
|
for( SearchResultHit hit : hits )
|
||||||
{
|
{
|
||||||
ArtifactDAO artifactDAO = archivaDAO.getArtifactDAO();
|
ArtifactDAO artifactDAO = archivaDAO.getArtifactDAO();
|
||||||
ArchivaArtifact pomArtifact = artifactDAO.getArtifact(
|
try
|
||||||
hit.getGroupId(), hit.getArtifactId(), hit.getVersion(), "", "pom" );
|
|
||||||
|
|
||||||
if( pomArtifact != null )
|
|
||||||
{
|
{
|
||||||
Artifact artifact = new Artifact( pomArtifact.getModel().getRepositoryId(), pomArtifact.getGroupId(), pomArtifact.getArtifactId(), pomArtifact.getVersion(),
|
ArchivaArtifact pomArtifact = artifactDAO.getArtifact(
|
||||||
pomArtifact.getType(), pomArtifact.getModel().getWhenGathered() );
|
hit.getGroupId(), hit.getArtifactId(), hit.getVersion(), "", "pom" );
|
||||||
artifacts.add( artifact );
|
|
||||||
|
if( pomArtifact != null )
|
||||||
|
{
|
||||||
|
Artifact artifact = new Artifact( pomArtifact.getModel().getRepositoryId(), pomArtifact.getGroupId(), pomArtifact.getArtifactId(), pomArtifact.getVersion(),
|
||||||
|
pomArtifact.getType() );
|
||||||
|
//pomArtifact.getType(), pomArtifact.getModel().getWhenGathered() );
|
||||||
|
artifacts.add( artifact );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
catch ( ObjectNotFoundException e )
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
catch ( ArchivaDatabaseException e )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -137,8 +150,8 @@ public class SearchServiceImpl
|
||||||
for( ArchivaArtifact archivaArtifact : artifacts )
|
for( ArchivaArtifact archivaArtifact : artifacts )
|
||||||
{
|
{
|
||||||
Artifact artifact = new Artifact( archivaArtifact.getModel().getRepositoryId(), archivaArtifact.getModel().getGroupId(),
|
Artifact artifact = new Artifact( archivaArtifact.getModel().getRepositoryId(), archivaArtifact.getModel().getGroupId(),
|
||||||
archivaArtifact.getModel().getArtifactId(), archivaArtifact.getModel().getVersion(), archivaArtifact.getType(),
|
archivaArtifact.getModel().getArtifactId(), archivaArtifact.getModel().getVersion(), archivaArtifact.getType() );
|
||||||
archivaArtifact.getModel().getWhenGathered() );
|
//archivaArtifact.getModel().getWhenGathered() );
|
||||||
results.add( artifact );
|
results.add( artifact );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -157,8 +170,8 @@ public class SearchServiceImpl
|
||||||
for( String version : results.getVersions() )
|
for( String version : results.getVersions() )
|
||||||
{
|
{
|
||||||
ArchivaArtifact pomArtifact = artifactDAO.getArtifact( groupId, artifactId, version, "", "pom" );
|
ArchivaArtifact pomArtifact = artifactDAO.getArtifact( groupId, artifactId, version, "", "pom" );
|
||||||
Artifact artifact = new Artifact( "", groupId, artifactId, version, pomArtifact.getType(),
|
Artifact artifact = new Artifact( "", groupId, artifactId, version, pomArtifact.getType() );
|
||||||
pomArtifact.getModel().getWhenGathered() );
|
//pomArtifact.getModel().getWhenGathered() );
|
||||||
|
|
||||||
artifacts.add( artifact );
|
artifacts.add( artifact );
|
||||||
}
|
}
|
||||||
|
@ -222,7 +235,9 @@ public class SearchServiceImpl
|
||||||
List<ArchivaProjectModel> dependees = repoBrowsing.getUsedBy( "", observableRepos, "org.apache.archiva", "archiva-test", "1.0" );
|
List<ArchivaProjectModel> dependees = repoBrowsing.getUsedBy( "", observableRepos, "org.apache.archiva", "archiva-test", "1.0" );
|
||||||
for( ArchivaProjectModel model : dependees )
|
for( ArchivaProjectModel model : dependees )
|
||||||
{
|
{
|
||||||
Artifact artifact = new Artifact( "", model.getGroupId(), model.getArtifactId(), model.getVersion(), "", model.getWhenIndexed() );
|
Artifact artifact =
|
||||||
|
new Artifact( "", model.getGroupId(), model.getArtifactId(), model.getVersion(), "" );
|
||||||
|
//model.getWhenIndexed() );
|
||||||
artifacts.add( artifact );
|
artifacts.add( artifact );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue