| 1 19 package org.lucane.applications.userprofile; 20 21 import org.lucane.common.*; 22 import org.lucane.server.*; 23 import org.lucane.common.concepts.UserConcept; 24 import org.lucane.common.net.ObjectConnection; 25 import org.lucane.server.store.UserStore; 26 27 public class UserProfileService extends Service 28 { 29 private UserStore store; 30 31 public UserProfileService() 32 { 33 } 34 35 public void init(Server parent) 36 { 37 this.store = parent.getStore().getUserStore(); 38 } 39 40 public void process(ObjectConnection oc, Message message) 41 { 42 UserProfileAction upa = (UserProfileAction)message.getData(); 43 String login = message.getSender().getName(); 44 45 try { 46 switch(upa.getAction()) 47 { 48 case UserProfileAction.GET_PROFILE: 49 ProfileInfo profile = getProfile(login); 50 oc.write("OK"); 51 oc.write(profile); 52 break; 53 54 case UserProfileAction.SET_PROFILE: 55 setProfile(login, upa.getProfile()); 56 oc.write("OK"); 57 break; 58 } 59 } catch(Exception e) { 60 try { 61 oc.write("FAILED " + e); 62 } catch(Exception e2) {} 63 } 64 } 65 66 public void setProfile(String login, ProfileInfo profile) 67 throws Exception  68 { 69 UserConcept user = store.getUser(login); 70 user.setRealName(profile.getRealName()); 71 user.setMailAddress(profile.getMailAddress()); 72 user.setLanguage(profile.getLanguage()); 73 store.updateUser(user); 74 } 75 76 public ProfileInfo getProfile(String login) 77 throws Exception  78 { 79 UserConcept user = store.getUser(login); 80 return new ProfileInfo(user.getRealName(), user.getMailAddress(), user.getLanguage()); 81 } 82 } | Popular Tags |