extract controller methods