This doesn’t consider how we’d get some subset of the rules to the client; we can tackle that later.
Given the previously mentioned 1 to 1 mapping, conversion of these two classes should actually be pretty easy. We only need to take care that similar exceptions are thrown, and that we catch them properly.
We should probably change the package name to something like org.fedoraproject.candlepin.policy.script or something, too.
JsRulesProvider is a guice provider that handles precompiling the rules, and setting up thread local contexts.
For starters we should just do a straight port of the code, which should be easy enough.