added generic_controller::set