//// Copyright (c) 2016, Andy Frank// Licensed under the Apache License version 2.0//// History:// 23 Aug 2016 Andy Frank Creation//using concurrent**** System models a target system image.**constclass System{** It-block ctor.new make(|This| f){ f(this)// TODO?this.jre = "linux-armv6-vfp-hflt"}** Make default System.new makeDef(Str name){this.name = namethis.version = defVer[name]// TODO: host on BitBucket one or two more round till we// decide where; how to host binaries on GitHubthis.uri = `https://bitbucket.org/studs/core/downloads/studs-system-${name}-${version}.tar.gz`// TODO FIXITthis.jre = name == "rpi0" ? "linux-arm-sflt" : "linux-armv6-vfp-hflt"}** Unique name for this systemconst Str name** Vesion of system.const Version version** URI to fetch system image.const Uri uri** JRE platform for this system.const Str jre** toStr is {name}-{version}override Str toStr(){"${name}-${version}"}** Default system versions.privatestaticconst Str:Version defVer := ["bb": Version("1.3"),"rpi3": Version("1.3"),"rpi0": Version("1.3"),]}