public bool addAvailableBioBrick(BioBrick brick, bool updateView = true)
{
Logger.Log("AvailableBioBricksManager::addAvailableBioBrick(" + brick + ")", Logger.Level.INFO);
string bbName = brick.getName();
if ((null != brick) &&
(null == LinkedListExtensions.Find <BioBrick>(
_availableBioBricks
, b => b.getName() == bbName
, false
, " AvailableBioBricksManager::addAvailableBioBrick(" + brick + ", " + updateView + ")"
)
))
// TODO deeper safety check
// && !LinkedListExtensions.Find<BioBrick>(_availableBioBricks, b => b..Equals(brick), true, " AvailableBioBricksManager::addAvailableBioBrick("+brick+", "+updateView+")")
{
Logger.Log("AvailableBioBricksManager::addAvailableBioBrick(" + brick + ") will _availableBioBricks.AddLast(" + brick + ")", Logger.Level.INFO);
_availableBioBricks.AddLast(brick);
if (updateView)
{
updateDisplayedBioBricks();
}
return(true);
}
else
{
Logger.Log("AvailableBioBricksManager::addAvailableBioBrick(" + brick + ") fail", Logger.Level.INFO);
return(false);
}
}