package com.beecode.inz.authentication;

import java.util.Collection;

import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.SpringSecurityCoreVersion;

import com.beecode.inz.authentication.enumeration.LoginModeEnum;

/**
 * c端customer登录token
 * @author pengwufeng
 *
 */
public class CustomerAuthenticationToken extends UsernamePasswordAuthenticationToken {

	private static final long serialVersionUID = SpringSecurityCoreVersion.SERIAL_VERSION_UID;

	private LoginModeEnum loginMode;

	public CustomerAuthenticationToken(LoginModeEnum loginMode, Object principal, Object credentials) {
		super(principal, credentials);
		
		this.loginMode = loginMode;
	}

	public CustomerAuthenticationToken(LoginModeEnum loginMode, Object principal, Object credentials,
			Collection<? extends GrantedAuthority> authorities) {
		super(principal, credentials, authorities);
		
		this.loginMode = loginMode;
	}
	
	public Object getCustomerCredentials() {
		return getCredentials();
	}

	public LoginModeEnum getLoginMode() {
		return loginMode;
	}

	
}