mirror of https://github.com/apache/archiva.git
[MRM-1580] system status page flush cache link.
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1299684 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
fac85e0b4b
commit
97a31442ea
|
@ -65,4 +65,11 @@ public interface SystemStatusService
|
|||
List<CacheEntry> getCacheEntries()
|
||||
throws ArchivaRestServiceException;
|
||||
|
||||
@Path( "clearCache/{key}" )
|
||||
@GET
|
||||
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
|
||||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
|
||||
Boolean clearCache( @PathParam( "key" ) String cacheKey )
|
||||
throws ArchivaRestServiceException;
|
||||
|
||||
}
|
||||
|
|
|
@ -126,4 +126,18 @@ public class DefaultSystemStatusService
|
|||
|
||||
return cacheEntries;
|
||||
}
|
||||
|
||||
public Boolean clearCache( String cacheKey )
|
||||
throws ArchivaRestServiceException
|
||||
{
|
||||
Cache cache = caches.get( cacheKey );
|
||||
if ( cache == null )
|
||||
{
|
||||
throw new ArchivaRestServiceException( "no cache for key: " + cacheKey,
|
||||
Response.Status.BAD_REQUEST.getStatusCode() );
|
||||
}
|
||||
|
||||
cache.clear();
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -298,6 +298,14 @@ system-status.header.scanning.inprogress.none=No scans in progress.
|
|||
system-status.queues.grid.header.key=Queue
|
||||
system-status.queues.grid.header.number=Size
|
||||
system-status.header.main=System Status
|
||||
system-status.caches.grid.header.cacheHits=Hits
|
||||
system-status.queues.grid.header.size=Size
|
||||
system-status.caches.grid.header.cacheMiss=Misses
|
||||
system-status.caches.grid.header.cacheHitRate=Hit Ratio
|
||||
system-status.caches.grid.header.flush=Flush
|
||||
system-status.caches.grid.header.key=Cache
|
||||
system-status.caches.flushed=Cache {0} flushed.
|
||||
system-status.caches.grid.header.size=Size
|
||||
|
||||
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 786 B |
Binary file not shown.
After Width: | Height: | Size: 655 B |
|
@ -603,6 +603,18 @@ $(function() {
|
|||
});
|
||||
}
|
||||
|
||||
flushCache=function(key){
|
||||
clearUserMessages();
|
||||
$("#main-content #status_caches").html(smallSpinnerImg());
|
||||
$.ajax("restServices/archivaServices/systemStatusService/clearCache/"+encodeURIComponent(key), {
|
||||
type: "GET",
|
||||
success: function(data){
|
||||
displaySuccessMessage( $.i18n.prop("system-status.caches.flushed",key));
|
||||
displayCacheEntries();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
displaySystemStatus=function(){
|
||||
screenChange();
|
||||
var mainContent=$("#main-content");
|
||||
|
|
|
@ -367,6 +367,7 @@
|
|||
<th>${$.i18n.prop('system-status.caches.grid.header.cacheHits')}</th>
|
||||
<th>${$.i18n.prop('system-status.caches.grid.header.cacheMiss')}</th>
|
||||
<th>${$.i18n.prop('system-status.caches.grid.header.cacheHitRate')}</th>
|
||||
<th>${$.i18n.prop('system-status.caches.grid.header.flush')}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -377,6 +378,15 @@
|
|||
<td>${cacheEntry.cacheHits}</td>
|
||||
<td>${cacheEntry.cacheMiss}</td>
|
||||
<td>${cacheEntry.cacheHitRate}</td>
|
||||
<td>
|
||||
<a href="#" onclick="flushCache('${cacheEntry.key}')">
|
||||
{{if cacheEntry.size > 0 }}
|
||||
<img src="images/user-trash-full.png"/>
|
||||
{{else}}
|
||||
<img src="images/user-trash.png"/>
|
||||
{{/if}}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
|
|
Loading…
Reference in New Issue