> +   }
> +
> +   public static Properties defaultProperties() {
> +      Properties properties = BaseHttpApiMetadata.defaultProperties();
> +      return properties;
> +   }
> +
> +   public static class Builder extends BaseHttpApiMetadata.Builder<EtcdApi, 
> Builder> {
> +
> +      protected Builder() {
> +         super(EtcdApi.class);
> +         id("etcd").
> +         name("Etcd API").
> +         identityName("username:password").
> +         defaultIdentity("Optional Username").
> +         defaultCredential("Optional Password").

I'm not saying you have to use ones or the others. All four methods should be 
present:

* `identityName` and `credentialName` are mandatory for all ApiMetadata 
classes. They are just labels that define the format of the identity and 
credential so users know what to put there when creating the context. They're 
just labels to give a hint and allow, for example, tooling to prompt for the 
right thing.
* `defaultIdentity` and `defaultCredential` are default values to set for the 
identity and credential fields, if that makes sense, in case the user does not 
supply one of them. These are optional as in most apis/providers users are 
required both the identity and the credential.

In this case, as the credentials are not used, you have to set all four methods 
in your api metadata, in order to configure a default dummy credentials so the 
user does not have to provide them (which would be useless and confusing) when 
creating the context.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/195/files#r36246427

Reply via email to