Author: olamy
Date: Thu Nov 17 21:29:44 2011
New Revision: 1203376

URL: http://svn.apache.org/viewvc?rev=1203376&view=rev
Log:
includePom in index search results configurable: false by default

Modified:
    
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/NexusRepositorySearch.java
    
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/RepositorySearch.java
    
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchFields.java
    
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchResultHit.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Artifact.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/NexusRepositorySearch.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/NexusRepositorySearch.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/NexusRepositorySearch.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/NexusRepositorySearch.java
 Thu Nov 17 21:29:44 2011
@@ -124,7 +124,7 @@ public class NexusRepositorySearch
 
         // we retun only artifacts without classifier in quick search, olamy 
cannot find a way to say with this field empty
         // FIXME  cannot find a way currently to setup this in constructQuery 
!!!
-        return search( limits, q, indexingContextIds, 
NoClassifierArtifactInfoFiler.LIST, principal, selectedRepos );
+        return search( limits, q, indexingContextIds, 
NoClassifierArtifactInfoFiler.LIST, selectedRepos, false );
 
     }
 
@@ -235,13 +235,13 @@ public class NexusRepositorySearch
             throw new RepositorySearchException( "No search fields set." );
         }
 
-        return search( limits, q, indexingContextIds, 
Collections.<ArtifactInfoFiler>emptyList(), principal,
-                       searchFields.getRepositories() );
+        return search( limits, q, indexingContextIds, 
Collections.<ArtifactInfoFiler>emptyList(),
+                       searchFields.getRepositories(), 
searchFields.isIncludePomArtifacts() );
     }
 
     private SearchResults search( SearchResultLimits limits, BooleanQuery q, 
List<String> indexingContextIds,
-                                  List<? extends ArtifactInfoFiler> filters, 
String principal,
-                                  List<String> selectedRepos )
+                                  List<? extends ArtifactInfoFiler> filters,
+                                  List<String> selectedRepos, boolean 
includePoms)
         throws RepositorySearchException
     {
 
@@ -259,7 +259,7 @@ public class NexusRepositorySearch
                 return results;
             }
 
-            return convertToSearchResults( response, limits, filters, 
principal, selectedRepos );
+            return convertToSearchResults( response, limits, filters, 
selectedRepos, includePoms );
         }
         catch ( IOException e )
         {
@@ -449,7 +449,7 @@ public class NexusRepositorySearch
 
     private SearchResults convertToSearchResults( FlatSearchResponse response, 
SearchResultLimits limits,
                                                   List<? extends 
ArtifactInfoFiler> artifactInfoFilers,
-                                                  String principal, 
List<String> selectedRepos )
+                                                  List<String>selectedRepos, 
boolean includePoms)
         throws RepositoryAdminException
     {
         SearchResults results = new SearchResults();
@@ -457,7 +457,7 @@ public class NexusRepositorySearch
 
         for ( ArtifactInfo artifactInfo : artifactInfos )
         {
-            if ( StringUtils.equalsIgnoreCase( "pom", artifactInfo.fextension 
) )
+            if ( StringUtils.equalsIgnoreCase( "pom", artifactInfo.fextension 
) && !includePoms )
             {
                 continue;
             }
@@ -500,6 +500,7 @@ public class NexusRepositorySearch
                 hit.setPrefix( artifactInfo.prefix );
                 hit.setPackaging( artifactInfo.packaging );
                 hit.setClassifier( artifactInfo.classifier );
+                hit.setFileExtension( artifactInfo.fextension );
                 hit.setUrl( getBaseUrl( artifactInfo, selectedRepos ) );
             }
 

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/RepositorySearch.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/RepositorySearch.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/RepositorySearch.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/RepositorySearch.java
 Thu Nov 17 21:29:44 2011
@@ -29,7 +29,7 @@ import java.util.Set;
 public interface RepositorySearch
 {
     /**
-     * Quick search.
+     * Quick search by won't return artifact with file extension pom
      *
      * @param principal
      * @param selectedRepos

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchFields.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchFields.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchFields.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchFields.java
 Thu Nov 17 21:29:44 2011
@@ -97,6 +97,12 @@ public class SearchFields
      */
     private String bundleExportService;
 
+    /**
+     * not return artifact with file extension pom
+     * @since 1.4-M2
+     */
+    private boolean includePomArtifacts = false;
+
     private String classifier;
 
     public SearchFields()
@@ -246,6 +252,16 @@ public class SearchFields
         this.bundleName = bundleName;
     }
 
+    public boolean isIncludePomArtifacts()
+    {
+        return includePomArtifacts;
+    }
+
+    public void setIncludePomArtifacts( boolean includePomArtifacts )
+    {
+        this.includePomArtifacts = includePomArtifacts;
+    }
+
     @Override
     public String toString()
     {
@@ -263,6 +279,7 @@ public class SearchFields
         sb.append( ", bundleImportPackage='" ).append( bundleImportPackage 
).append( '\'' );
         sb.append( ", bundleName='" ).append( bundleName ).append( '\'' );
         sb.append( ", bundleExportService='" ).append( bundleExportService 
).append( '\'' );
+        sb.append( ", includePomArtifacts=" ).append( includePomArtifacts );
         sb.append( ", classifier='" ).append( classifier ).append( '\'' );
         sb.append( '}' );
         return sb.toString();

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchResultHit.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchResultHit.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchResultHit.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/search/SearchResultHit.java
 Thu Nov 17 21:29:44 2011
@@ -129,6 +129,12 @@ public class SearchResultHit
 
     private String classifier;
 
+    /**
+     * file extension of the search result
+     * @since 1.4-M2
+     */
+    private String fileExtension;
+
     public String getContext()
     {
         return context;
@@ -344,6 +350,16 @@ public class SearchResultHit
         this.classifier = classifier;
     }
 
+    public String getFileExtension()
+    {
+        return fileExtension;
+    }
+
+    public void setFileExtension( String fileExtension )
+    {
+        this.fileExtension = fileExtension;
+    }
+
     @Override
     public String toString()
     {
@@ -369,6 +385,7 @@ public class SearchResultHit
         sb.append( ", bundleImportPackage='" ).append( bundleImportPackage 
).append( '\'' );
         sb.append( ", bundleRequireBundle='" ).append( bundleRequireBundle 
).append( '\'' );
         sb.append( ", classifier='" ).append( classifier ).append( '\'' );
+        sb.append( ", fileExtension='" ).append( fileExtension ).append( '\'' 
);
         sb.append( '}' );
         return sb.toString();
     }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Artifact.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Artifact.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Artifact.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/Artifact.java
 Thu Nov 17 21:29:44 2011
@@ -127,6 +127,12 @@ public class Artifact
 
     private String packaging;
 
+    /**
+     * file extension of the search result
+     * @since 1.4-M2
+     */
+    private String fileExtension;
+
 
     public Artifact()
     {
@@ -334,6 +340,15 @@ public class Artifact
         this.packaging = packaging;
     }
 
+    public String getFileExtension()
+    {
+        return fileExtension;
+    }
+
+    public void setFileExtension( String fileExtension )
+    {
+        this.fileExtension = fileExtension;
+    }
 
     @Override
     public String toString()
@@ -360,6 +375,7 @@ public class Artifact
         sb.append( ", bundleRequireBundle='" ).append( bundleRequireBundle 
).append( '\'' );
         sb.append( ", classifier='" ).append( classifier ).append( '\'' );
         sb.append( ", packaging='" ).append( packaging ).append( '\'' );
+        sb.append( ", fileExtension='" ).append( fileExtension ).append( '\'' 
);
         sb.append( '}' );
         return sb.toString();
     }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java
 Thu Nov 17 21:29:44 2011
@@ -86,6 +86,12 @@ public class SearchRequest
 
     private String classifier;
 
+    /**
+     * not return artifact with file extension pom
+     * @since 1.4-M2
+     */
+    private boolean includePomArtifacts = false;
+
     public SearchRequest()
     {
         // no op
@@ -213,6 +219,16 @@ public class SearchRequest
         this.classifier = classifier;
     }
 
+    public boolean isIncludePomArtifacts()
+    {
+        return includePomArtifacts;
+    }
+
+    public void setIncludePomArtifacts( boolean includePomArtifacts )
+    {
+        this.includePomArtifacts = includePomArtifacts;
+    }
+
     @Override
     public String toString()
     {
@@ -229,6 +245,7 @@ public class SearchRequest
         sb.append( ", bundleExportPackage='" ).append( bundleExportPackage 
).append( '\'' );
         sb.append( ", bundleExportService='" ).append( bundleExportService 
).append( '\'' );
         sb.append( ", classifier='" ).append( classifier ).append( '\'' );
+        sb.append( ", includePomArtifacts=" ).append( includePomArtifacts );
         sb.append( '}' );
         return sb.toString();
     }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java?rev=1203376&r1=1203375&r2=1203376&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java
 Thu Nov 17 21:29:44 2011
@@ -229,31 +229,6 @@ public class DefaultSearchService
             {
                 for ( String version : hit.getVersions() )
                 {
-                    /*
-                    Artifact versionned = new Artifact(  );
-                    versionned.setArtifactId( hit.getArtifactId());
-                    versionned.setGroupId( hit.getGroupId() );
-                    versionned.setRepositoryId(hit.getRepositoryId() );
-
-
-                    versionned.setBundleExportPackage( 
hit.getBundleExportPackage() );
-                    versionned.setBundleExportService( 
hit.getBundleExportService());
-                    
versionned.setBundleSymbolicName(hit.getBundleSymbolicName() );
-                    versionned.setBundleVersion( artifactInfo.bundleVersion );
-                    versionned.setBundleDescription( 
artifactInfo.bundleDescription );
-                    versionned.setBundleDocUrl( artifactInfo.bundleDocUrl );
-
-                    versionned.setBundleRequireBundle( 
artifactInfo.bundleRequireBundle );
-                    versionned.setBundleImportPackage( 
artifactInfo.bundleImportPackage );
-                    versionned.setBundleLicense( artifactInfo.bundleLicense );
-                    versionned.setBundleName( artifactInfo.bundleName );
-                    versionned.setContext( artifactInfo.context );
-                    versionned.setGoals( artifactInfo.goals );
-                    versionned.setPrefix( artifactInfo.prefix );
-                    // sure ??
-                    versionned.setUrl( artifactInfo.remoteUrl );
-                    */
-                    // FIXME archiva url ??
 
                     Artifact versionned = new BeanReplicator().replicateBean( 
hit, Artifact.class );
 
@@ -271,6 +246,12 @@ public class DefaultSearchService
         return artifacts;
     }
 
+    /**
+     * TODO add a configuration mechanism to have configured the base archiva 
url
+     * @param httpContext
+     * @param artifact
+     * @return
+     */
     private String getArtifactUrl( HttpContext httpContext, Artifact artifact )
     {
         if ( httpContext == null )


Reply via email to