public:
virtual ~Credential() {}
+ /**
+ * Bitmask constants for limiting resolution process inside a CredentialResolver.
+ */
enum ResolveTypes {
RESOLVE_KEYS = 1,
RESOLVE_NAMES = 2
};
/**
+ * Enumeration of use cases for credentials.
+ */
+ enum UsageTypes {
+ UNSPECIFIED_CREDENTIAL,
+ SIGNING_CREDENTIAL,
+ TLS_CREDENTIAL,
+ ENCRYPTION_CREDENTIAL
+ };
+
+ /**
+ * Get the credential usage type.
+ *
+ * @return the usage
+ */
+ virtual UsageTypes getUsage() const=0;
+
+ /**
* Returns an algorithm identifier for the Credential.
*
* @return the Credential algorithm, or NULL if indeterminate