📄 userfactoryimpl.java
字号:
package com.esri.solutions.jitk.personalization.data;
import com.esri.solutions.jitk.personalization.PersonalizationException;
import com.esri.solutions.jitk.personalization.dao.IPersonalizationDAOProfile;
import com.esri.solutions.jitk.personalization.dao.IUserDAO;
import com.esri.solutions.jitk.personalization.dao.PersonalizationDAOException;
import com.esri.solutions.jitk.personalization.dao.UserRecord;
import com.esri.solutions.jitk.personalization.data.beans.v1.PreferenceSettingsType;
public class UserFactoryImpl implements IUserFactory {
private IPersonalizationDAOProfile m_daoProfile;
private PreferenceSettingsType m_defaultPrefs;
public IUser createUser(IUserId id) throws PersonalizationException {
if (id == null) {
throw new NullPointerException();
}
User user = null;
try {
IUserDAO dao = m_daoProfile.getUserDAO();
UserRecord record = dao.selectOne(id.getUsername());
if (record == null) {
user = new User();
user.setUserId(id);
user.setNew(true);
user.setPreferenceSettings(m_defaultPrefs);
user.setPersonalizationDAOProfile(m_daoProfile);
user.save();
} else {
user = new User();
user.setUserId(id);
user.setNew(false);
user.setPersonalizationDAOProfile(m_daoProfile);
user.setUserInfoRecord(record);
if (user.getPreferenceSettings() == null) {
user.setPreferenceSettings(m_defaultPrefs);
user.save();
}
}
return user;
} catch (PersonalizationDAOException e) {
throw new PersonalizationException (
PersonalizationException.Code.RETRIEVE_DATA_ERROR,
e);
}
}
public void setPersonalizationDAOProfile (IPersonalizationDAOProfile profile) {
if (profile == null) {
throw new NullPointerException();
}
m_daoProfile = profile;
}
public void setDefaultPreferenceSettings (PreferenceSettingsType prefs) {
m_defaultPrefs = prefs;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -