public override AddingResult askAddDevice(Device device, bool reportToRedMetrics = false)
{
if (device == null)
{
Logger.Log("Equipment::askAddDevice device == null", Logger.Level.WARN);
return(AddingResult.FAILURE_DEFAULT);
}
Device copy = Device.buildDevice(device);
if (copy == null)
{
Logger.Log("Equipment::askAddDevice copy == null", Logger.Level.WARN);
return(AddingResult.FAILURE_DEFAULT);
}
//TODO test BioBricks equality (cf next line)
if (_devices.Exists(d => d.Equals(copy)))
//if(_devices.Exists(d => d.getInternalName() == copy.getInternalName()))
{
Logger.Log("Equipment::askAddDevice device already present", Logger.Level.INFO);
return(AddingResult.FAILURE_SAME_DEVICE);
}
_devices.Add(copy);
safeGetDisplayer().addEquipedDevice(copy);
addToReactionEngine(copy);
return(AddingResult.SUCCESS);
}