InfoView.java 1.87 KB
package fi.codecrew.moya.web.flow;

import java.util.List;

import javax.ejb.EJB;
import javax.enterprise.context.ConversationScoped;
import javax.inject.Inject;
import javax.inject.Named;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import fi.codecrew.moya.beans.UserBeanLocal;
import fi.codecrew.moya.model.EventUser;
import fi.codecrew.moya.model.ReaderEvent;
import fi.codecrew.moya.util.UserSearchQuery;
import fi.codecrew.moya.utilities.SearchResult;
import fi.codecrew.moya.web.cdiview.GenericCDIView;
import fi.codecrew.moya.web.cdiview.reader.ReaderView;
import fi.codecrew.moya.web.cdiview.user.UserView;

@Named
@ConversationScoped
public class InfoView extends GenericCDIView {

	private static final long serialVersionUID = 802344850073689859L;
	
	private EventUser multiSearchUser = null;

	private static final Logger logger = LoggerFactory.getLogger(InfoView.class);

		@Inject
		private UserView userview;
		
		@Inject
		private ReaderView readerView;
		
		@EJB
		private UserBeanLocal userbean;
		
		public void initView() {
			super.beginConversation();
		}
		
		public String saveUser() {
			logger.info("Saving user in incomingView");
			userview.saveUser();
			return null;
		}
		
		
		public String selectUser() {
			
			ReaderEvent event = readerView.getReaderEvent();
			
			if(event == null)
				return null;
			
			EventUser user = event.getUser();
			
			if(user == null) {
				return null;
			}
			
			userview.setUser(user);
			
			return "general";
		}
		
		public List<EventUser> matchMulti(String what) {
			UserSearchQuery usq = new UserSearchQuery();
			usq.setSearch(what);

			SearchResult<EventUser> sr = userbean.getThisEventsUsers(usq);

			return sr.getResults();
		}

		public EventUser getMultiSearchUser() {
			return multiSearchUser;
		}

		public void setMultiSearchUser(EventUser multiSearchUser) {
			this.multiSearchUser = multiSearchUser;
		}

		

}