* e.g. only fetch Migration/Characterisation templates
* @return
*/
public Map<String,String> getAllAvailableTBServiceTemplates(){
Map<String,String> ret = new TreeMap<String,String>();
ExperimentBean expBean = (ExperimentBean)JSFUtil.getManagedObject("ExperimentBean");
ServiceTemplateRegistry registry = ServiceTemplateRegistryImpl.getInstance();
Collection<TestbedServiceTemplate> templates = new Vector<TestbedServiceTemplate>();
//determine which typeID has been selected
//simple migration experiment
if(expBean.getEtype().equals("experimentType.simpleMigration")){
//mapping between service type ID and experiment type ID
templates = registry.getAllServicesWithType(
TestbedServiceTemplate.ServiceOperation.SERVICE_OPERATION_TYPE_MIGRATION
);
}
//simple characterisation experiment
if(expBean.getEtype().equals("experimentType.simpleCharacterisation")){
templates = registry.getAllServicesWithType(
TestbedServiceTemplate.ServiceOperation.SERVICE_OPERATION_TYPE_CHARACTERISATION
);
}
//test if at least one template exists
if((templates!=null)&&(templates.size()>0)){
//add data for rendering
Iterator<TestbedServiceTemplate> itTemplates = templates.iterator();
while(itTemplates.hasNext()){
TestbedServiceTemplate template = itTemplates.next();
//use the deployment date to extend the service name for selection
String format = "yyyy-MM-dd HH:mm:ss";
String date = doFormat(format, template.getDeploymentDate());
ret.put(template.getName()+" - "+date+" - "+template.getDescription(),String.valueOf(template.getUUID()));
}
//only triggered for the first time
if(expBean.getSelectedServiceTemplate()==null){
expBean.setSelServiceTemplateID(ret.values().iterator().next());
reloadOperations();
}
}
return ret;
}