diff options
-rw-r--r-- | archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/AdminRepositoryConsumer.java (renamed from archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumer.java) | 23 | ||||
-rw-r--r-- | archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/general-admin.js | 39 | ||||
-rw-r--r-- | archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/menu.html | 3 | ||||
-rw-r--r-- | archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AddAdminRepoConsumerClosure.java | 1 | ||||
-rw-r--r-- | archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumerComparator.java | 2 | ||||
-rw-r--r-- | archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/RepositoryScanningAction.java | 53 |
6 files changed, 91 insertions, 30 deletions
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumer.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/AdminRepositoryConsumer.java index 5d714130b..539980a56 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumer.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/AdminRepositoryConsumer.java @@ -1,4 +1,4 @@ -package org.apache.archiva.web.action.admin.scanning; +package org.apache.archiva.rest.api.model; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,17 +19,34 @@ package org.apache.archiva.web.action.admin.scanning; * under the License. */ +import javax.xml.bind.annotation.XmlRootElement; + /** - * AdminRepositoryConsumer + * AdminRepositoryConsumer * * @version $Id$ */ +@XmlRootElement( name = "adminRepositoryConsumer" ) public class AdminRepositoryConsumer { private boolean enabled = false; + private String id; + private String description; - + + public AdminRepositoryConsumer() + { + // no op + } + + public AdminRepositoryConsumer( boolean enabled, String id, String description ) + { + this.enabled = enabled; + this.id = id; + this.description = description; + } + public String getDescription() { return description; diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/general-admin.js b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/general-admin.js index 0b72d7ac2..1a6cfcc51 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/general-admin.js +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/general-admin.js @@ -296,4 +296,43 @@ $(function() { } + //--------------------------- + // repository scanning part + //--------------------------- + + FileType=function(id,patterns){ + //private String id; + this.id=ko.observable(id); + + //private List<String> patterns; + this.patterns=ko.observableArray(patterns); + + } + + mapFileType=function(data){ + return new FileType(data.id,data.patterns); + } + + mapFileTypes=function(data){ + if (data!=null){ + return $.isArray(data)? $.map(data,function(item){ + return mapFileType(item) + }):[mapFileType(data)]; + } + return []; + } + + displayRepositoryScanning=function(){ + + $.ajax("restServices/archivaServices/archivaAdministrationService/getFileTypes", { + type: "GET", + dataType: 'json', + success: function(data){ + var fileTypes=mapFileTypes(data); + } + }); + + } + + });
\ No newline at end of file diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/menu.html b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/menu.html index 9d3125a1a..b87ac8b28 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/menu.html +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/menu.html @@ -45,6 +45,9 @@ <li style="display: none" redback-permissions="{permissions: ['archiva-manage-configuration']}"> <a href="#" id="menu-legacy-support-list-a" onclick="displayLegacyArtifactPathSupport()">${$.i18n.prop('menu.legacy-artifact-support')}</a> </li> + <li style="display: none" redback-permissions="{permissions: ['archiva-manage-configuration']}"> + <a href="#" id="menu-repository-scanning-list-a" onclick="displayRepositoryScanning()">${$.i18n.prop('menu.repository-scanning')}</a> + </li> </ul> <ul class="nav nav-list" redback-permissions="{permissions: ['archiva-manage-users']}"> diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AddAdminRepoConsumerClosure.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AddAdminRepoConsumerClosure.java index 34f9c7758..34023bb21 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AddAdminRepoConsumerClosure.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AddAdminRepoConsumerClosure.java @@ -19,6 +19,7 @@ package org.apache.archiva.web.action.admin.scanning; * under the License. */ +import org.apache.archiva.rest.api.model.AdminRepositoryConsumer; import org.apache.commons.collections.Closure; import org.apache.archiva.consumers.RepositoryContentConsumer; diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumerComparator.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumerComparator.java index 44dc677cf..61130e67d 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumerComparator.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/AdminRepositoryConsumerComparator.java @@ -19,6 +19,8 @@ package org.apache.archiva.web.action.admin.scanning; * under the License. */ +import org.apache.archiva.rest.api.model.AdminRepositoryConsumer; + import java.util.Comparator; /** diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/RepositoryScanningAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/RepositoryScanningAction.java index 99391e3e1..36117aeef 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/RepositoryScanningAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/archiva/web/action/admin/scanning/RepositoryScanningAction.java @@ -27,6 +27,7 @@ import org.apache.archiva.admin.model.beans.FileType; import org.apache.archiva.admin.repository.admin.FiletypeToMapClosure; import org.apache.archiva.audit.Auditable; import org.apache.archiva.repository.scanner.RepositoryContentConsumers; +import org.apache.archiva.rest.api.model.AdminRepositoryConsumer; import org.apache.archiva.security.common.ArchivaRoleConstants; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; @@ -67,7 +68,7 @@ public class RepositoryScanningAction private List<String> fileTypeIds; /** - * List of {@link AdminRepositoryConsumer} objects for consumers of known content. + * List of {@link org.apache.archiva.rest.api.model.AdminRepositoryConsumer} objects for consumers of known content. */ private List<AdminRepositoryConsumer> knownContentConsumers; @@ -102,6 +103,30 @@ public class RepositoryScanningAction log.info( "[ActionMessage] {}", aMessage ); } + public void prepare() + throws Exception + { + FiletypeToMapClosure filetypeToMapClosure = new FiletypeToMapClosure(); + + CollectionUtils.forAllDo( archivaAdministration.getFileTypes(), filetypeToMapClosure ); + fileTypeMap = filetypeToMapClosure.getMap(); + + AddAdminRepoConsumerClosure addAdminRepoConsumer = + new AddAdminRepoConsumerClosure( archivaAdministration.getKnownContentConsumers() ); + CollectionUtils.forAllDo( repoconsumerUtil.getAvailableKnownConsumers(), addAdminRepoConsumer ); + this.knownContentConsumers = addAdminRepoConsumer.getList(); + Collections.sort( knownContentConsumers, AdminRepositoryConsumerComparator.getInstance() ); + + addAdminRepoConsumer = new AddAdminRepoConsumerClosure( archivaAdministration.getInvalidContentConsumers() ); + CollectionUtils.forAllDo( repoconsumerUtil.getAvailableInvalidConsumers(), addAdminRepoConsumer ); + this.invalidContentConsumers = addAdminRepoConsumer.getList(); + Collections.sort( invalidContentConsumers, AdminRepositoryConsumerComparator.getInstance() ); + + fileTypeIds = new ArrayList<String>(); + fileTypeIds.addAll( fileTypeMap.keySet() ); + Collections.sort( fileTypeIds ); + } + public String addFiletypePattern() { log.info( "Add New File Type Pattern [{}:{}]", getFileTypeId(), getPattern() ); @@ -187,32 +212,6 @@ public class RepositoryScanningAction return bundle; } - public void prepare() - throws Exception - { - - - FiletypeToMapClosure filetypeToMapClosure = new FiletypeToMapClosure(); - - CollectionUtils.forAllDo( archivaAdministration.getFileTypes(), filetypeToMapClosure ); - fileTypeMap = filetypeToMapClosure.getMap(); - - AddAdminRepoConsumerClosure addAdminRepoConsumer = - new AddAdminRepoConsumerClosure( archivaAdministration.getKnownContentConsumers() ); - CollectionUtils.forAllDo( repoconsumerUtil.getAvailableKnownConsumers(), addAdminRepoConsumer ); - this.knownContentConsumers = addAdminRepoConsumer.getList(); - Collections.sort( knownContentConsumers, AdminRepositoryConsumerComparator.getInstance() ); - - addAdminRepoConsumer = new AddAdminRepoConsumerClosure( archivaAdministration.getInvalidContentConsumers() ); - CollectionUtils.forAllDo( repoconsumerUtil.getAvailableInvalidConsumers(), addAdminRepoConsumer ); - this.invalidContentConsumers = addAdminRepoConsumer.getList(); - Collections.sort( invalidContentConsumers, AdminRepositoryConsumerComparator.getInstance() ); - - fileTypeIds = new ArrayList<String>(); - fileTypeIds.addAll( fileTypeMap.keySet() ); - Collections.sort( fileTypeIds ); - } - public void setFileTypeId( String fileTypeId ) { this.fileTypeId = fileTypeId; |