You should always use enums when a variable (especially a method parameter) can only take one out of a small set of possible values.
If you use enums instead of integers (or String codes), you increase compile-time checking and avoid errors from passing in invalid constants, and you document which values are legal to use.