@@ -0,0 +1,1393 @@
+/*%0A * Copyright 2016 Datalogics Inc.%0A */%0A%0Apackage com.datalogics.pdf.hsm.samples;%0A%0Aimport com.adobe.pdfjt.core.credentials.Credentials;%0A%0A/**%0A * The basic interface for logging into a HSM machine.%0A */%0Apublic interface HsmManager %7B%0A%0A    /**%0A     * Performs a login operation to the HSM device. The login operation occurs on the given tokenLabel or the first%0A     * available slot if tokenLabel is null. NOTE: tokenLabel is synonymous with partition name.%0A     *%0A     * @param tokenLabel- The label of the token to which to login%0A     * @param password - The password to use for the login%0A     * @return a boolean indicating if the login was successful%0A     */%0A    boolean hsmLogin(final String tokenLabel, final String password);%0A%0A    /**%0A     * Logs out of the default session with the HSM device.%0A     *%0A     * %3Cp%3E%0A     * This method should be called only if you have called %7B@link hsmLogin%7D to establish a login session.%0A     */%0A    void hsmLogout();%0A%0A    /**%0A     * Get the Credentials object for the HSM device.%0A     *%0A     * @param password - the password for recovering the key%0A     * @param keyLabel - the given alias associated with the key%0A     * @param certLabel - the given alias associated with the certificate%0A     * @return a Credentials object used to sign documents%0A     */%0A    Credentials getCredentials(final String password, final String keyLabel, final String certLabel);%0A%7D%0A

Add generic interface.