Switch framework