I don't think there is anything wrong with this law as long as it will be done keeping the degree of crime in mind, which of course would be the case. Otherwise no one will go to Switzerland fearing that ill be deported if i'll drive over the speed by mistake.
And i think the local population should be given some priority because when a host country allows immigrants to come and work, its actually doing a favor to them by sharing the opportunities which are there for natives.
Since mostly immigrants are from under developed countries they usually take a lot of negative things along with them from ill manners to crimes. So its not a bad thing if they want to keep themselves clean.
Here in gulf countries if an individual is found guilty for a serious legal charge like theft, rape, murder etc then he is jailed and later deported.
In short why should a host take bads when all it offers is good!!