#NEWLINE# def add_user( self , user ) : #NEWLINE# #INDENT# 'Add a new user\n        \n        By default, this just adds the user to the whitelist.\n        \n        Subclasses may do more extensive things,\n        such as adding actual unix users,\n        but they should call super to ensure the whitelist is updated.\n\n        Args:\n            user (User): The User wrapper object\n        ' #NEWLINE# if ( not self . validate_username ( user . name ) ) : #NEWLINE# #INDENT# raise ValueError ( ( 'Invalid username: %s' % user . name ) ) #NEWLINE# #UNINDENT# if self . whitelist : #NEWLINE# #INDENT# self . whitelist . add ( user . name )