Publisher publisher = dataStore.getPublisher(publisherID);
if (publisher == null)
throw new UnknownUserException("user ID: "+userID);
// generate a new token (optionally using publisher info)
String token = dataStore.generateToken(publisher);
// save auth token value to persistent storage
dataStore.storeAuthToken(token,publisher);
// commit this transaction