IssuanceHelper extends AbstractHelper { public static synchronized IssuanceHelper getInstance() { log.info("IssuanceHelper.getInstance : " + instance + (instance == null ? "" : " : " + instance)); if (instance == null) { throw new IllegalStateException("getInstance not called before using IssuanceHelper!"); } return instance; } private  IssuanceHelper(String publicResourcesPrefix, String privateStoragePrefix); private  IssuanceHelper(String publicResourcesPrefix, String privateStoragePrefix,
      String[] revocationAuthorityParametersResourcesList); static synchronized boolean isInit(); static synchronized void resetInstance(); static synchronized IssuanceHelper getInstance(); static synchronized IssuanceHelper initInstance(int keyLength,
      String publicResourcesPrefix, String privateStoragePrefix, SpecAndPolicy[] specAndPolicyList,
      List<RevocationAuthorityParameters> revocationAuthorityParametersList); static synchronized IssuanceHelper initInstanceWithExitingSystemPareters(
      SystemParameters foreignSystemParameters, List<CredentialSpecification> foreignCredSpecList,
      List<IssuerParameters> foreignIssuerParamList, String publicResourcesPrefix,
      String privateStoragePrefix, SpecAndPolicy[] specAndPolicyList,
      List<RevocationAuthorityParameters> revocationAuthorityParametersList); static synchronized IssuanceHelper initInstanceForService(
      String systemAndIssuerParamsPrefix, String fileStoragePrefix); static synchronized StorageFiles verifyFiles(boolean wipe_existing_storage,
      String fileStoragePrefix, CryptoEngine cryptoEngine); static String getFileStoragePrefix(String filePrefix, CryptoEngine cryptoEngine); SystemParameters createNewSystemParametersKeylength(int keyLength); IssuerParameters setupIssuerParameters(CryptoEngine cryptoEngine,
      CredentialSpecification credSpec, SystemParameters systemParameters, URI issuerParamsUid,
      URI hash, URI revocationParamsUid, String systemAndIssuerParamsPrefix,
      List<FriendlyDescription> friendlyDescriptions); void registerSmartcardScopeExclusivePseudonym(BigInteger pse); SpecAndPolicy initSpecAndPolicy(String specAndPolicyKey); IssuanceMessageAndBoolean issueStep(IssuanceMessage issuanceMessage); IssuanceMessageAndBoolean reIssueStep(IssuanceMessage issuanceMessage); IssuanceMessage initReIssuance(String specAndPolicyKey); IssuanceMessage initIssuance(String credspecAndPolicyKey,
      Map<String, Object> attributeValueMap); IssuanceMessage initIssuance(SpecAndPolicy specAndPolicy,
      Map<String, Object> attributeValueMap); IssuanceMessageAndBoolean initIssuanceProtocol(IssuancePolicy issuancePolicy,
      List<Attribute> attributes); @Override void addCredentialSpecifications(String[] credSpecResourceList); @Override void addIssuerParameters(String[] issuerParametersResourceList); IssuanceLogEntry getIssuanceLogEntry(URI issuanceEntryUid);  }
@Test(expected = IllegalStateException.class) public void test_notInit() throws Exception { IssuanceHelper.getInstance(); }