package com.rectang.xsm.wicket;
import org.apache.wicket.model.LoadableDetachableModel;
import org.apache.wicket.Component;
import com.rectang.xsm.UserData;
/**
* Created by IntelliJ IDEA.
*
* @author Andrew Williams
* @version $Id: DetachableUserDataModel.java 663 2007-10-04 22:50:25Z aje $
* @since 1.0
*/
public class DetachableUserDataModel
extends LoadableDetachableModel
{
private transient UserData user;
private String username;
private com.rectang.xsm.site.Site site;
public DetachableUserDataModel( String username, com.rectang.xsm.site.Site site )
{
this.username = username;
this.site = site;
}
public DetachableUserDataModel( UserData user )
{
this( user.getUsername(), user.getSite() );
this.user = user;
}
protected Object load()
{
return new UserData( username, site, false );
}
public Object getObject()
{
return user;
}
public int hashCode()
{
return username.hashCode();
}
public boolean equals( Object object )
{
if ( object == this )
{
return true;
}
if ( object == null )
{
return false;
}
return (object instanceof DetachableUserDataModel &&
((DetachableUserDataModel) object).username.equals( username ));
}
}