diff --git a/manifests/init.pp b/manifests/init.pp index f8dd0a2..de54142 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -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', + } } }