Attached is some skeleton code for the new DRM interface. To build, you
will need to download and install the candlepin-deps rpm.
We will use these rpms to build/run until we get the resteasy packages
The new classes provide the following:
1. interface to list/get/submit key requests (for archival and
2. interface to recover keys
3. interface to approve/reject key recovery requests.
4. input/output via XML/JSON/browser.
This is pretty much just a skeleton as not all the functionality is
currently in the DRM. There is also no authentication/authz as Jack has
yet to work that part out. But it does look pretty much like what the
restful interface will probably look like - and the comments point out
the parts that are missing.
Jack - please look to see how your new code would interact with this -
and also in terms of the input/output parameters/structures.
Endi, Adam: please look to see if the structure/ coding makes sense - or
if it can be improved. Its not at all final - but all feedback will
To test, you can do the following:
1. Build the code. You will need to replace pki-common and pki-kra.
2. pkicreate and configure a DRM. The needed changes to web.xml should
be in the new instance.
3. Add links to the following jars in webapps/lib/. They should all be
--> javassist, jaxrs-api, jettison, resteasy-jaxb-provider,
resteasy-jaxrs, resteasy-jettison-provider, scannotation
4. Archive some keys by doing enrollments with your CA or TPS.
You could also set up the DRM instance to be controlled by eclipse in
the same way that we do for the CA instance. If you do this, you will
be able to step through the code with the debugger.
You should be able to see archived enrollments/ recoveries by going to :
using a browser, or using curl to get xml or json.
This is not ready for commit, but I want people to start getting eyes
on it. I know it builds but have not checked beyond that part. I am
reworking a large number of changes into a set of manageble sized
patches and I think I have all of the dependencies for these changes in
this patch, but I have not yet confirmed that.
These have been rebased on top of master and might conflict with
previously submitted patches. These should all all be relatively
independent, but it is possible that some of the later patches require
earlier patches in order to apply. Please indicate the patch number in
any ACK/NACK messages.
The PKI_COMPONENT_LIST has been modified to include the new test
component to fix dependency issues.
Note: There seems to be an existing problem with the
Endi S. Dewata