/* Realty-Property.com Tutorial */ package RealtyTutorial; import io.baratine.core.*; import javax.inject.Inject; import java.util.ArrayList; import java.util.Iterator; @ResourceService("public:///RealtyUserList") public class UserList { @Inject @Lookup("/RealtyUserListUser") ResourceManager m_userman; /** * @return empty array in case of error, or if nothing found */ public ArrayList GetUserList() { ArrayList list=new ArrayList(); try { Iterable reflist=m_userman.findAll("true");//there must be a where clause Iterator it=reflist.iterator(); while (it.hasNext()) list.add(it.next().as(User.class).get()); } catch(Exception ex){ex.printStackTrace();} return(list); } /** * @param firstname String * @param lastname String * @return int id of new user, 0 or -1 if error, -2 if exception */ @Modify public int CreaterUser(String firstname,String lastname) { int newid=-1; try { ServiceRef ref=m_userman.create(firstname,lastname); if (ref!=null) { User user=ref.as(User.class); newid=user.getM_id(); } } catch(Exception ex){ex.printStackTrace();newid=-2;} return(newid); } /** * @param firstname String * @param lastname String * @return int 0 if ok, -1 if error, -2 if exception */ @Modify public int CreaterUserAsync(String firstname,String lastname) { int ret=-1; try { m_userman.create( ref-> { if (ref!=null) { //ServiceRef cast is needed to call as() User user=((ServiceRef)ref).as(User.class).get(); } }, firstname,lastname); ret=0; } catch(Exception ex){ex.printStackTrace();ret=-2;} return(ret); } /** * @param id int * @return null if error */ public User GetUser(int id) { User user=null; try { ServiceRef ref=m_userman.findOne("m_id=?",id); if (ref!=null) user=ref.as(User.class).get(); } catch(Exception ex){ex.printStackTrace();} return(user); } /* * @param arguser User * @return boolean */ public boolean UpdateUser(User arguser) { boolean success=false; try { ServiceRef ref=m_userman.findOne("m_id=?",arguser.getM_id()); if (ref!=null) { User user=ref.as(User.class).get(); user.put(arguser); success=true; } } catch(Exception ex){ex.printStackTrace();} return(success); } /** * @param id int * @return null if error */ public boolean DelUser(int id) { boolean delok=false; try { ServiceRef ref=m_userman.findOne("m_id=?",id); if (ref!=null) { ref.as(User.class).Delete(); delok=true; } } catch(Exception ex){ex.printStackTrace();} return(delok); } }