Class Snws2AuthorizationBuilder


public final class Snws2AuthorizationBuilder extends AbstractAuthorizationBuilder<Snws2AuthorizationBuilder>
Builder for HTTP Authorization header values using the SolarNetwork authentication scheme V2.

This builder can be used to calculate a one-off header value, for example:

 
 String authHeader = new Snws2AuthorizationBuilder("my-token")
     .path("/solarquery/api/v1/pub/...")
     .build("my-token-secret");
 
 
Or the builder can be re-used for a given token:
 
 // create a builder for a token
 Snws2AuthorizationBuilder builder = new Snws2AuthorizationBuilder("my-token");
 
 // elsewhere, re-use the builder for repeated requests
 builder.reset()
     .path("/solarquery/api/v1/pub/...")
     .build("my-token-secret");
 
 
Additionally, a signing key can be generated and re-used for up to 7 days:
 
 // create a builder for a token
 Snws2AuthorizationBuilder builder = new Snws2AuthorizationBuilder("my-token")
   .saveSigningKey("my-token-secret");
 
 // elsewhere, re-use the builder for repeated requests
 builder.reset()
     .path("/solarquery/api/v1/pub/...")
     .build(); // note no argument call here, so previously generated key used
 
 

This class is not thread safe and should not be used concurrently.

Version:
1.0
Author:
matt