Why isPrimitive receiving a String type as an argument ?