Change jre and jdk booleans to a single string
Dan raised the comment in the previous patch set that it doesn't make sense to provide two options and four states when there are really only two possibilities; install the jre or the jdk. This change removes the jdk and jre class parameters and replaces them with a single distribution parameters.
This commit is contained in:
@@ -12,33 +12,31 @@
|
||||
#
|
||||
# [Remember: No empty lines between comments and class definition]
|
||||
class java(
|
||||
$jre = false,
|
||||
$jdk = true,
|
||||
$version='1.6.0_25-fcs'
|
||||
$distribution = 'jdk',
|
||||
$version = 'installed'
|
||||
) {
|
||||
|
||||
# Cannot pass anonymous arrays to functions in 2.6.8
|
||||
$v_true_false = [ '^true$', '^false$' ]
|
||||
$v_distribution = [ '^jre$', '^jdk$' ]
|
||||
# Must compare string values, not booleans.
|
||||
validate_re("$jre", $v_true_false)
|
||||
validate_re("$jdk", $v_true_false)
|
||||
validate_re($version, '^[._0-9a-zA-Z:-]+$')
|
||||
validate_re($distribution, $v_distribution)
|
||||
|
||||
$jre_real = $jre
|
||||
$jdk_real = $jdk
|
||||
$version_real = $version
|
||||
$version_real = $version
|
||||
$distribution_real = $distribution
|
||||
|
||||
if $jre_real {
|
||||
class { 'java::jre_package':
|
||||
version => $version_real,
|
||||
stage => 'runtime',
|
||||
case $distribution_real {
|
||||
jre: {
|
||||
class { 'java::jre_package':
|
||||
version => $version_real,
|
||||
stage => 'runtime',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if $jdk_real {
|
||||
class { 'java::jdk_package':
|
||||
version => $version_real,
|
||||
stage => 'runtime',
|
||||
jdk: {
|
||||
class { 'java::jdk_package':
|
||||
version => $version_real,
|
||||
stage => 'runtime',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user