@Override public ResourceProfile getAvailableResource() { // AvailableResource = (remaining resources of non-empty task managers) + (all empty task managers) ResourceProfile availableResource = new ResourceProfile(0, 0); for (Tuple2<Map<SlotID, ResourceProfile>, ResourceProfile> allocated : allocatedSlotsResource.values()) { availableResource.addTo(allocated.f1); } int emptyTaskManagerNum = taskManagerRegistrations.size() - allocatedSlotsResource.size(); availableResource.addTo(totalResourceOfTaskExecutor.multiply(emptyTaskManagerNum)); return availableResource; }
public ResourceProfile merge(ResourceProfile another) { ResourceProfile resourceProfile = new ResourceProfile(this); resourceProfile.addTo(another); return resourceProfile; }
public ResourceProfile getTotalResource() { ResourceProfile totalResources = new ResourceProfile(ResourceProfile.EMTPY); for (Map.Entry<SlotID, TaskManagerSlot> entry : slots.entrySet()) { if (!entry.getValue().getResourceProfile().equals(ResourceProfile.UNKNOWN)) { totalResources.addTo(entry.getValue().getResourceProfile()); } } return totalResources; }
public ResourceProfile getAvailableResource() { ResourceProfile availableResources = new ResourceProfile(ResourceProfile.EMTPY); for (Map.Entry<SlotID, TaskManagerSlot> entry : slots.entrySet()) { if (entry.getValue().getState() == TaskManagerSlot.State.FREE && !entry.getValue().getResourceProfile().equals(ResourceProfile.UNKNOWN)) { availableResources.addTo(entry.getValue().getResourceProfile()); } } return availableResources; }
public ResourceProfile getTotalResourceOf(ResourceID resourceID) { ResourceProfile totalResources = new ResourceProfile(ResourceProfile.EMTPY); for (Map.Entry<SlotID, TaskManagerSlot> entry : slots.entrySet()) { if (entry.getKey().getResourceID().equals(resourceID) && !entry.getValue().getResourceProfile().equals(ResourceProfile.UNKNOWN)) { totalResources.addTo(entry.getValue().getResourceProfile()); } } return totalResources; }
public ResourceProfile getAvailableResourceOf(ResourceID resourceID) { ResourceProfile availableResources = new ResourceProfile(ResourceProfile.EMTPY); for (Map.Entry<SlotID, TaskManagerSlot> entry : slots.entrySet()) { if (entry.getValue().getState() == TaskManagerSlot.State.FREE && entry.getKey().getResourceID().equals(resourceID) && !entry.getValue().getResourceProfile().equals(ResourceProfile.UNKNOWN)) { availableResources.addTo(entry.getValue().getResourceProfile()); } } return availableResources; }