class HostProfiler {

    public ClusterVmProfile getHostsVmsResources() {
        ClusterVmProfile vmsProfile = new ClusterVmProfile();
        for(HostResources host : hosts) {
            List<VmResources> vmsOnHost = host.getVmsResources();
            for(VmResources vmResources : vmsOnHost) {
                vmsProfile.setNumberOfInstances(vmsProfile.getNumberOfInstances() + 1);
                vmsProfile.setTotalCpus(vmsProfile.getTotalCpus() + vmResources.getNumberOfCpus());
                vmsProfile.setTotalCpuSpeed((int) (vmsProfile.getTotalCpuSpeed() + vmResources.getCpuSpeed()));
                vmsProfile.setTotalMemory((int) (vmsProfile.getTotalMemory() + vmResources.getMemoryInMegaBytes()));
            }
        }
        return vmsProfile;
    }

    public  HostProfiler(List<HostResources> hosts);

}