
package olstore.session.helper;

import olstore.dto.UserValue;
import olstore.entity.UserLocal;


public interface UserHelper {
   /**
    * Used to save the user's information from a DTO back into the user entity bean
    * @param userValue The DTO storing the user information
    * @param addressValue The DTO storing the address information
    * @param username The username of the user
    */
   public void SaveUser( olstore.dto.UserValue userValue,olstore.dto.AddressValue addressValue,java.lang.String username ) throws java.lang.Exception;

   /**
    * Return the user's DTO when the username is passed to it
    * @param username The username of the user
    * @return The DTO for the user
    */
   public olstore.dto.UserValue getUserValue( java.lang.String username ) throws java.lang.Exception;

   /**
    * Creates a new user entity bean
    * @param createUserValue The DTO for the User
    * @param addressValue The DTO for the User's Address
    */
   public void CreateUser( olstore.dto.CreateUserValue createUserValue,olstore.dto.AddressValue addressValue ) throws java.lang.Exception;

   
   /**
    * Method to copy the user's information from the
    * user entity bean to the userValue dto.
    * 
    * @param user The user to get the information from.
    * @return	The userValue dto.
    * @throws Exception
    */
   public olstore.dto.UserValue UserToDTO (UserLocal user) throws Exception;
}
