trait Factory { def create(instanceType:String):Command }
class FactoryImpl extends Factory{ def create(instanceType:String):Command = instanceType match { case "validate" => new ValidateCommand case "cancel" => new CancelCommand case _ => error("Not yet implemented ...") } }