/** * @return Set of required rng sources. */ public Set<VmRngDevice.Source> getRequiredRngSources() { final Set<VmRngDevice.Source> requiredRngSources = new HashSet<>(getAdditionalRngSources()); requiredRngSources.add(VmRngDevice.Source.getUrandomOrRandomFor(getCompatibilityVersion())); return Collections.unmodifiableSet(requiredRngSources); }
private void setRngAvailability() { TModel model = getModel(); Set<VmRngDevice.Source> requiredRngSources = model.getSelectedCluster().getRequiredRngSources(); boolean urandomSourceAvailable = requiredRngSources.contains(VmRngDevice.Source.URANDOM) || requiredRngSources.contains(VmRngDevice.Source.RANDOM); boolean hwrngSourceAvailable = requiredRngSources.contains(VmRngDevice.Source.HWRNG); model.getRngSourceUrandom().setIsChangeable(urandomSourceAvailable); if (!urandomSourceAvailable) { model.getRngSourceUrandom().setChangeProhibitionReason(messages.rngSourceNotSupportedByCluster( VmRngDevice.Source.getUrandomOrRandomFor(getModel().getSelectedCluster().getCompatibilityVersion()) .toString().toLowerCase())); } model.getRngSourceHwrng().setIsChangeable(hwrngSourceAvailable); if (!hwrngSourceAvailable) { model.getRngSourceHwrng().setChangeProhibitionReason(messages.rngSourceNotSupportedByCluster( VmRngDevice.Source.HWRNG.toString().toLowerCase())); } }
public VmRngDevice.Source getUrandomOrRandomRngSource() { return VmRngDevice.Source.getUrandomOrRandomFor(getModel().getCompatibilityVersion()); }
public void updateSourceByVersion(Version clusterVersion) { final Source source = getSource(); if (source == Source.URANDOM || source == Source.RANDOM) { setSource(Source.getUrandomOrRandomFor(clusterVersion)); } }