Extensions Wiki » Extensions » Size of XE Distributions

Size of XE Distributions

Last modified by Andreea Popescu on 2014/08/22 09:26
cogGraphes evolution of the XE distributions over time
TypeSnippet
Developed by

Vincent Massol

LicenseGNU Lesser General Public License 2.1

Table of contents

Description

Computes evolution of the XE HSQLDB/Jetty distribution over time, starting with 2.6.

{{groovy}}
@Grab(group='org.ccil.cowan.tagsoup', module='tagsoup', version='1.2' )
def tagsoupParser = new org.ccil.cowan.tagsoup.Parser()
def slurper = new XmlSlurper(tagsoupParser)
def data = [:]

void parseURL(def data, def slurper, def url)
{
 def html = slurper.parse(url)
  html.body.a.findAll { it.@href =~ '^[0-9]+' }.'@href'*.text().each() {
   def version = it[0..-2]
   // Get size by parsing version page
   def pageHtml = slurper.parse("${url}/${version}/")
    pageHtml.body.text().split(/(\n)/).findAll { it =~ '\\.zip ' }.each {
      data.put(version, it.split()[3])
   }
 }
}

parseURL(data, slurper, "http://maven.xwiki.org/releases/com/xpn/xwiki/products/xwiki-enterprise-hsqldb/")
parseURL(data, slurper, "http://maven.xwiki.org/releases/com/xpn/xwiki/products/xwiki-enterprise-jetty-hsqldb/")
parseURL(data, slurper, "http://maven.xwiki.org/releases/org/xwiki/enterprise/xwiki-enterprise-jetty-hsqldb/")

println "|=Version|=Size"
data.each { version, size ->
  println "|${version}|${size}"
}
println ""

println "{{chart type='line' source='inline' params='range:B1-B${data.size()};series:columns;' title='Size of XWiki Jetty/HSQLDB Distributions' width='1000' height='400'}}"
data.each { version, size ->
  println "|${version}|${size[0..-2]}"
}
println "{{/chart}}"
{{/groovy}}

Example result

hsqldb-sizes.png

Tags:
Created by Vincent Massol on 2013/02/05 15:06

Download XWiki

My Recent Modifications

Get Connected