com.vodafone360.people.service.utils
Class AuthUtils

java.lang.Object
  extended by com.vodafone360.people.service.utils.AuthUtils

public class AuthUtils
extends java.lang.Object

Set of functions that are used for generating 'auth' parameter required for cresting requests and is usually based on a valid session created on sign-up/login.


Constructor Summary
AuthUtils()
           
 
Method Summary
static java.lang.String calculateAuth(java.lang.String functionName, java.util.Hashtable<java.lang.String,java.lang.Object> parameters, java.lang.String timeStamp, AuthSessionHolder session)
          Calculates the AUTH parameter using a list of NameValues.
private static java.lang.String createSigningString(java.lang.String inputString, java.lang.Object inputObject)
          Calculates a signing string from a name/value pair
private static java.lang.String createSignOfByteAray(byte[] bytes)
          Calculates the sign value from a byte array
private static java.lang.String createSignOfHastable(java.util.Hashtable<java.lang.String,java.lang.Object> hashTable)
          Calculates the sign value from a Hash table
private static java.lang.String createSignOfVector(java.util.Vector<java.lang.Object> vector)
          Calculates the sign value from a Vector
static java.lang.String getMd5Hash(java.lang.String input)
          Generates a MD5 hash of the input.
private static java.util.List<java.lang.String> getSortedListOfKeys(java.util.Hashtable<java.lang.String,java.lang.Object> map)
          Returns a list of keys from the map in alphabetical order
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AuthUtils

public AuthUtils()
Method Detail

getMd5Hash

public static java.lang.String getMd5Hash(java.lang.String input)
Generates a MD5 hash of the input.

Parameters:
input - - String from which MD5 will be created
Returns:
String containing MD5 hash created from input parameter
Throws:
java.lang.NullPointerException - when input is NULL
java.lang.NullPointerException - MD5 algorithm could not be found

calculateAuth

public static java.lang.String calculateAuth(java.lang.String functionName,
                                             java.util.Hashtable<java.lang.String,java.lang.Object> parameters,
                                             java.lang.String timeStamp,
                                             AuthSessionHolder session)
Calculates the AUTH parameter using a list of NameValues. TODO: Why is this called differently for every API?

Parameters:
functionName - - String representation of function, using the "class/funcName" convention e.g. "auth/getsessionbycredentials". Typically empty.
parameters - - List of name/value pairs
timeStamp - - String containing absolute time stamps, generated by calls to getCurrentTimeInSeconds()
session - - Valid session object or NULL
Returns:
AUTH parameter String
Throws:
java.lang.NullPointerException - when functionName is NULL
java.lang.NullPointerException - when parameters is NULL
java.lang.NullPointerException - when timeStamp is NULL

createSigningString

private static java.lang.String createSigningString(java.lang.String inputString,
                                                    java.lang.Object inputObject)
Calculates a signing string from a name/value pair

Parameters:
inputString - - String name.
inputObject - - Object value can be Hashtable, Vector, byte[] or String.
Returns:
Signing String
Throws:
java.lang.NullPointerException - when inputString is NULL
java.lang.NullPointerException - when inputObject is NULL

createSignOfHastable

private static java.lang.String createSignOfHastable(java.util.Hashtable<java.lang.String,java.lang.Object> hashTable)
Calculates the sign value from a Hash table

Parameters:
hashTable - - Given Hash table
Returns:
Sign value String
Throws:
java.lang.NullPointerException - when hashTable is NULL

createSignOfVector

private static java.lang.String createSignOfVector(java.util.Vector<java.lang.Object> vector)
Calculates the sign value from a Vector

Parameters:
hashTable - - Given Vector
Returns:
Sign value String
Throws:
java.lang.NullPointerException - when vector is NULL

createSignOfByteAray

private static java.lang.String createSignOfByteAray(byte[] bytes)
Calculates the sign value from a byte array

Parameters:
bytes - - Given byte array
Returns:
Sign value String
Throws:
java.lang.NullPointerException - when bytes is NULL

getSortedListOfKeys

private static java.util.List<java.lang.String> getSortedListOfKeys(java.util.Hashtable<java.lang.String,java.lang.Object> map)
Returns a list of keys from the map in alphabetical order

Parameters:
map - The map to sort
Returns:
The ordered list of keys


JavaDoc