Adrian Mariappa has completed his switch from Reading to Crystal Palace on a three-year deal for an undisclosed fee.