add optional component list for getcomponents functions