public class Allocation extends Object implements Cloneable, Comparable<Allocation>
| Constructor and Description |
|---|
Allocation(Map<csbase.logic.CommandInfo,csbase.logic.SGASet> allocationMap,
List<csbase.logic.SGASet> simulatedServers,
List<csbase.logic.CommandInfo> remainingCommands,
boolean isFeasible,
ResourceControllerInterface manager,
HashMap<String,csbase.logic.SGASet> originalServers) |
| Modifier and Type | Method and Description |
|---|---|
Allocation |
clone() |
int |
compareTo(Allocation other) |
List<csbase.logic.CommandInfo> |
getCurrentlyAllocatedCommands(csbase.logic.SGASet server)
Retorna uma lista que contém os comandos que foram direcionados a um SGA
passado como parâmetro
|
Map<csbase.logic.CommandInfo,csbase.logic.SGASet> |
getFeasibleAllocationMap()
Retorna mapa de alocação factível, se houver.
|
Map<csbase.logic.CommandInfo,csbase.logic.SGASet> |
getPartialAllocationMap()
Retorna mapa de alocação parcial (podendo ser também factível)
|
List<csbase.logic.SGASet> |
getPossibleChanges(csbase.logic.CommandInfo cmd)
Verifica todas as possíveis mudanças que se pode fazer com um comando
passado como parâmetro, ou seja, quais os SGAs que podem recebê-lo que
não sejam o SGA em que o comando já se encontra (se o comando já tiver um
SGA).
|
List<csbase.logic.CommandInfo> |
getPossibleChanges(csbase.logic.SGASet server)
Verifica todas as possíveis mudanças que se pode fazer com um SGA passado
como parâmetro, ou seja, quais os comandos com alocação resolvida ou não
que podem ser adicionados a esse SGA.
|
List<csbase.logic.CommandInfo> |
getRemainingCommands()
Retorna os comandos que não foram alocados nessa alocação.
|
List<csbase.logic.SGASet> |
getServersSimulations()
Retorna estado simulado de ocupação dos SGAs considerando as alocações
das quais dispõe.
|
csbase.logic.SGASet |
getServerState(String serverName)
Retorna simulação de SGA cujo nome foi passado como parâmetro
|
boolean |
isFeasible()
Checa se a alocação é factível.
|
csbase.logic.SGASet |
setAllocation(csbase.logic.CommandInfo cmd,
csbase.logic.SGASet server)
Verifica se é possível fazer alocação de um comando passado como
parâmetro em um SGA passado como parâmetro.
|
void |
unsetAllocation(csbase.logic.CommandInfo cmd)
Desfaz alocação de um comando passado como parâmetro, retirando-o do mapa
de alocações e colocando-o na lista de comandos não resolvidos.
|
public boolean isFeasible()
public Map<csbase.logic.CommandInfo,csbase.logic.SGASet> getFeasibleAllocationMap()
public Map<csbase.logic.CommandInfo,csbase.logic.SGASet> getPartialAllocationMap()
public List<csbase.logic.SGASet> getServersSimulations()
public List<csbase.logic.CommandInfo> getRemainingCommands()
public void unsetAllocation(csbase.logic.CommandInfo cmd)
cmd - Comando a ser retirado da alocaçãopublic csbase.logic.SGASet setAllocation(csbase.logic.CommandInfo cmd,
csbase.logic.SGASet server)
throws csbase.server.services.schedulerservice.heuristic.ImpossibleAllocationException,
csbase.server.services.schedulerservice.heuristic.InvalidSGASetException
cmd - Comando a ser retirado da alocaçãoserver - SGASet relativo à simulação do SGA que se deseja alocar o
comando.csbase.server.services.schedulerservice.heuristic.ImpossibleAllocationException - se não é possível alocar esse comando neste SGA por restriçõs
nos recursos do SGAcsbase.server.services.schedulerservice.heuristic.InvalidSGASetException - se o SGA passado não estiver entre as simulações de SGAs
corrente.public List<csbase.logic.SGASet> getPossibleChanges(csbase.logic.CommandInfo cmd)
cmd - Comandopublic List<csbase.logic.CommandInfo> getPossibleChanges(csbase.logic.SGASet server)
server - SGApublic Allocation clone()
public List<csbase.logic.CommandInfo> getCurrentlyAllocatedCommands(csbase.logic.SGASet server)
server - SGApublic csbase.logic.SGASet getServerState(String serverName)
serverName - public final int compareTo(Allocation other)
compareTo in interface Comparable<Allocation>Copyright © 2017. All rights reserved.