From an API design point of view I'd prefer to see an exception being thrown instead of returning false