You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sk...@apache.org on 2008/07/03 23:35:00 UTC

svn commit: r673822 [1/7] - in /myfaces/orchestra/trunk: examples/src/main/java/org/apache/myfaces/examples/annotations/ examples/src/main/java/org/apache/myfaces/examples/ballot/backings/ examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ ...

Author: skitching
Date: Thu Jul  3 14:34:56 2008
New Revision: 673822

URL: http://svn.apache.org/viewvc?rev=673822&view=rev
Log:
Tabs to spaces only

Modified:
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/annotations/MultiViewController.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotHall.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopic.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopicVotes.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopic.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopicCmp.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoter.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ItemDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/TopicDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoteDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoterDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/BallotState.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/SendMail.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Item.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Topic.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Vote.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Voter.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/backings/Checkout.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/backings/ConfiguratorData.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/backings/Customer.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/Initialization.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/dao/ComponentDAO.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/dao/CustomerDAO.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/dao/OrderHeadDAO.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/dao/PieceDAO.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/po/Component.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/po/Customer.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/po/OrderHead.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/po/OrderItem.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/configurator/model/po/Piece.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/dynaForm/model/SimpleEntity.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/filter/RequestEncodingFilter.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/lib/FacesConst.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/lib/FacesUtils.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/lib/SpringUtils.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/CustomerLogin.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/EditCustomerGroup.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/EditProduct.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/PetstoreData.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/ProductDetail.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/SearchProduct.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/backings/Security.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/CustomerGroupDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/CustomerGroupSuggest.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductPriceDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ShopCustomerDao.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/lib/CustomerGroupPkConverter.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/CustomerGroup.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/Product.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/ProductPrice.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/ShopCustomer.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/ShoppingCart.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/model/ShoppingCartItem.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/multibean/Multibean.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/multibean/MultibeanController.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/simple/backings/ReservationBookView.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/simple/backings/ReservationView.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/simple/model/Reservation.java
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/simple/model/ReservationBook.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/connectionManager/AbstractConnectionManagerListener.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/connectionManager/ConnectionManagerDataSource.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/connectionManager/ConnectionManagerListener.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/connectionManager/DisconnectableConnection.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/connectionManager/DisconnectableConnectionFactory.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/ComponentHandler.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/DataProvider.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/DisplaySize.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/Length.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/Max.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/Min.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/Range.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/ReadOnly.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/Temporal.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/annot/ui/UIComponent.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaConfig.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaConfigTag.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaConfigs.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaConfigsTag.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaForm.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/DynaFormTag.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/component/facelets/DynaFormHandler.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/DynaFormComponentHandler.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/GuiBuilder.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/Slipstream.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/DataSourceLabelConverter.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/JsfGuiBuilder.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/JsfGuiBuilderDecorator.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/JsfGuiBuilderFactory.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/JsfGuiElementBuilder.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/NewComponentListener.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/jsf/ValueBindingDataSourceAdapter.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/myfaces/MyFacesCheck.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/myfaces/MyFacesGuiBuilder.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/jsf/guiBuilder/impl/myfaces/SuggestSelectListMethodWrapper.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/ConditionEnum.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/DefaultValueMap.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/DynaFormException.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/MatchModeEnum.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/NullObject.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/ObjectSerializationConverter.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/OrderDirectionEnum.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/SelectionSourceEnum.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/SelectionTypeEnum.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/ViewType.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/lib/_FacesUtils.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/Extractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/FieldRepresentation.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/MetaData.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/MetaDataWritable.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/MetaField.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/MetaFieldWritable.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/RelationType.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/Selection.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/MetaDataImpl.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/MetaFieldImpl.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/BcelHelper.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/ClassHelper.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/EjbExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/JavaHelper.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/hibernate/HibernateExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/jsf/AbstractJsfExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/jsf/JsfExclusiveExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/jsf/JsfExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/jsf/JsfRequestFieldExtractor.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/metadata/utils/TypeInfos.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/uri/FacesUriResolver.java
    myfaces/orchestra/trunk/sandbox/src/main/java/org/apache/myfaces/orchestra/dynaForm/uri/UriResolver.java
    myfaces/orchestra/trunk/sandbox/src/test/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/TestAsmHelper.java
    myfaces/orchestra/trunk/sandbox/src/test/java/org/apache/myfaces/orchestra/dynaForm/metadata/impl/ejb/TestClassHelperFactory.java

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/annotations/MultiViewController.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/annotations/MultiViewController.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/annotations/MultiViewController.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/annotations/MultiViewController.java Thu Jul  3 14:34:56 2008
@@ -29,36 +29,36 @@
  * A viewController which is responsible for multiple views
  */
 @ConversationRequire(
-	conversationNames = "multiViewController",
-	entryPointViewIds = "/annotations/Page1.jsp",
-	redirect = "/annotations/Page1.faces")
+    conversationNames = "multiViewController",
+    entryPointViewIds = "/annotations/Page1.jsp",
+    redirect = "/annotations/Page1.faces")
 @ViewController(
-	viewIds={"/annotations/Page1.jsp", "/annotations/Page2.jsp", "/annotations/Page3.jsp"})
+    viewIds={"/annotations/Page1.jsp", "/annotations/Page2.jsp", "/annotations/Page3.jsp"})
 public class MultiViewController
 {
-	private String prevInitViewId;
-	private String initViewId;
+    private String prevInitViewId;
+    private String initViewId;
 
-	@InitView
-	public void anyMethodName()
-	{
-		prevInitViewId = initViewId;
-		initViewId = FacesContext.getCurrentInstance().getViewRoot().getViewId();
-	}
+    @InitView
+    public void anyMethodName()
+    {
+        prevInitViewId = initViewId;
+        initViewId = FacesContext.getCurrentInstance().getViewRoot().getViewId();
+    }
 
-	public String getInitViewId()
-	{
-		return initViewId;
-	}
+    public String getInitViewId()
+    {
+        return initViewId;
+    }
 
-	public String getPrevInitViewId()
-	{
-		return prevInitViewId;
-	}
+    public String getPrevInitViewId()
+    {
+        return prevInitViewId;
+    }
 
-	public String endConversationAction()
-	{
-		Conversation.getCurrentInstance().invalidate();
-		return null;
-	}
+    public String endConversationAction()
+    {
+        Conversation.getCurrentInstance().invalidate();
+        return null;
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotHall.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotHall.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotHall.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotHall.java Thu Jul  3 14:34:56 2008
@@ -35,128 +35,128 @@
 
 public class BallotHall
 {
-	private VoterDao voterDao;
-	private TopicDao topicDao;
-	private BallotState ballotState;
-
-	private List<TopicInfo> topicInfos;
-
-	public static class TopicInfo
-	{
-		private Topic topic;
-		private Long votes;
-
-		public TopicInfo(Topic topic, Long votes)
-		{
-			this.topic = topic;
-			this.votes = votes;
-		}
-
-		public Topic getTopic()
-		{
-			return topic;
-		}
-
-		public Long getVotes()
-		{
-			return votes;
-		}
-	}
-
-	@Transactional(readOnly=true)
-	public void initView()
-	{
-		String uuid = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("uuid");
-		String uid = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("uid");
-		if (!StringUtils.isEmpty(uuid) && !StringUtils.isEmpty(uid))
-		{
-			Voter voter = getVoterDao().getByKey(Long.parseLong(uid, 10));
-			if (voter != null && uuid.equals(voter.getIdentification()))
-			{
-				getBallotState().setVoterId(voter.getId());
-				getBallotState().setAuthenticated(true);
-
-				FacesUtils.addInfoMessage("welcome " + voter.getName());
-			}
-			else
-			{
-				FacesUtils.addErrorMessage("invalid credentials");
-			}
-		}
-	}
-
-	public BallotState getBallotState()
-	{
-		return ballotState;
-	}
-
-	public void setBallotState(BallotState ballotState)
-	{
-		this.ballotState = ballotState;
-	}
-
-	public VoterDao getVoterDao()
-	{
-		return voterDao;
-	}
-
-	public void setVoterDao(VoterDao voterDao)
-	{
-		this.voterDao = voterDao;
-	}
-
-	public TopicDao getTopicDao()
-	{
-		return topicDao;
-	}
-
-	public void setTopicDao(TopicDao topicDao)
-	{
-		this.topicDao = topicDao;
-	}
-
-	@Transactional(readOnly = true)
-	public List<TopicInfo> getTopics()
-	{
-		if (topicInfos != null)
-		{
-			return topicInfos;
-		}
-
-		topicInfos = new ArrayList<TopicInfo>();
-
-		List<Topic> topics = getTopicDao().getTopics();
-		Map<Long, Long> votes = getTopicDao().getTopicVotes();
-
-		for (Topic topic : topics)
-		{
-			topicInfos.add(new TopicInfo(topic, votes.get(topic.getId())));
-		}
-
-		return topicInfos;
-	}
-
-	public String showItemsAction()
-	{
-		// This bean is in access scope, so we will have a new instance on the
-		// next page. If this was in manual scope, we would need to do:
-		//    ConversationUtils.invalidateIfExists("ballotTopic");
+    private VoterDao voterDao;
+    private TopicDao topicDao;
+    private BallotState ballotState;
+
+    private List<TopicInfo> topicInfos;
+
+    public static class TopicInfo
+    {
+        private Topic topic;
+        private Long votes;
+
+        public TopicInfo(Topic topic, Long votes)
+        {
+            this.topic = topic;
+            this.votes = votes;
+        }
+
+        public Topic getTopic()
+        {
+            return topic;
+        }
+
+        public Long getVotes()
+        {
+            return votes;
+        }
+    }
+
+    @Transactional(readOnly=true)
+    public void initView()
+    {
+        String uuid = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("uuid");
+        String uid = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("uid");
+        if (!StringUtils.isEmpty(uuid) && !StringUtils.isEmpty(uid))
+        {
+            Voter voter = getVoterDao().getByKey(Long.parseLong(uid, 10));
+            if (voter != null && uuid.equals(voter.getIdentification()))
+            {
+                getBallotState().setVoterId(voter.getId());
+                getBallotState().setAuthenticated(true);
+
+                FacesUtils.addInfoMessage("welcome " + voter.getName());
+            }
+            else
+            {
+                FacesUtils.addErrorMessage("invalid credentials");
+            }
+        }
+    }
+
+    public BallotState getBallotState()
+    {
+        return ballotState;
+    }
+
+    public void setBallotState(BallotState ballotState)
+    {
+        this.ballotState = ballotState;
+    }
+
+    public VoterDao getVoterDao()
+    {
+        return voterDao;
+    }
+
+    public void setVoterDao(VoterDao voterDao)
+    {
+        this.voterDao = voterDao;
+    }
+
+    public TopicDao getTopicDao()
+    {
+        return topicDao;
+    }
+
+    public void setTopicDao(TopicDao topicDao)
+    {
+        this.topicDao = topicDao;
+    }
+
+    @Transactional(readOnly = true)
+    public List<TopicInfo> getTopics()
+    {
+        if (topicInfos != null)
+        {
+            return topicInfos;
+        }
+
+        topicInfos = new ArrayList<TopicInfo>();
+
+        List<Topic> topics = getTopicDao().getTopics();
+        Map<Long, Long> votes = getTopicDao().getTopicVotes();
+
+        for (Topic topic : topics)
+        {
+            topicInfos.add(new TopicInfo(topic, votes.get(topic.getId())));
+        }
+
+        return topicInfos;
+    }
+
+    public String showItemsAction()
+    {
+        // This bean is in access scope, so we will have a new instance on the
+        // next page. If this was in manual scope, we would need to do:
+        //    ConversationUtils.invalidateIfExists("ballotTopic");
                 // or wrap the button that triggers this method in an endConversation tag.
-		return FacesConst.SUCCESS;
-	}
+        return FacesConst.SUCCESS;
+    }
 
-	public String voteAction()
-	{
-		return FacesConst.SUCCESS;
-	}
-
-	public String topicVotesAction()
-	{
-		return FacesConst.SUCCESS;
-	}
-
-	public String newTopicAction()
-	{
-		return FacesConst.SUCCESS;
-	}
+    public String voteAction()
+    {
+        return FacesConst.SUCCESS;
+    }
+
+    public String topicVotesAction()
+    {
+        return FacesConst.SUCCESS;
+    }
+
+    public String newTopicAction()
+    {
+        return FacesConst.SUCCESS;
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopic.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopic.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopic.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopic.java Thu Jul  3 14:34:56 2008
@@ -35,150 +35,150 @@
 
 public class BallotTopic
 {
-	private TopicDao topicDao;
-	private ItemDao itemDao;
-	private VoterDao voterDao;
-
-	private BallotState ballotState;
-
-	private Topic topic;
-
-	private Item selectedItem;
-	private Item newItem = new Item();
-
-	public TopicDao getTopicDao()
-	{
-		return topicDao;
-	}
-
-	public void setTopicDao(TopicDao topicDao)
-	{
-		this.topicDao = topicDao;
-	}
-
-	public ItemDao getItemDao()
-	{
-		return itemDao;
-	}
-
-	public void setItemDao(ItemDao itemDao)
-	{
-		this.itemDao = itemDao;
-	}
-
-	public VoterDao getVoterDao()
-	{
-		return voterDao;
-	}
-
-	public void setVoterDao(VoterDao voterDao)
-	{
-		this.voterDao = voterDao;
-	}
-
-	public BallotState getBallotState()
-	{
-		return ballotState;
-	}
-
-	public void setBallotState(BallotState ballotState)
-	{
-		this.ballotState = ballotState;
-	}
-
-	public void initView()
-	{
-		if (topic == null)
-		{
-			String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
-			if (!StringUtils.isEmpty(topicId))
-			{
-				initTopic(Long.valueOf(topicId, 10));
-			}
-			else
-			{
-				setTopic(new Topic());
-			}
-		}
-	}
-
-	public Topic getTopic()
-	{
-		return topic;
-	}
-
-	public void setTopic(Topic topic)
-	{
-		this.topic = topic;
-	}
-
-	public Item getNewItem()
-	{
-		return newItem;
-	}
-
-	public Item getSelectedItem()
-	{
-		return selectedItem;
-	}
-
-	public void setSelectedItem(Item selectedItem)
-	{
-		this.selectedItem = selectedItem;
-	}
-
-	public boolean isTopicEditable()
-	{
-		return topicDao.isNew(getTopic()) || !getTopic().isStarted();
-	}
-
-	public String removeItemAction()
-	{
-		if (topic.getItems() != null)
-		{
-			topic.getItems().remove(getSelectedItem());
-			itemDao.remove(getSelectedItem());
-		}
-		return null;
-	}
-	
-	public String addItemAction()
-	{
-		topic.addItem(getNewItem());
-		newItem = new Item();
-		
-		return null;
-	}
-
-	public String newAction()
-	{
-		BallotTopic newTopic = (BallotTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
-		newTopic.setTopic(new Topic());
-
-		return FacesConst.SUCCESS;
-	}
-	
-	@Transactional
-	public String saveAction()
-	{
-		if (!StringUtils.isEmpty(getNewItem().getContent()))
-		{
-			addItemAction();
-		}
-
-		topic.setOwner(getVoterDao().getByKey(getBallotState().getVoterId()));
-		topicDao.save(topic);
-
-		Conversation.getCurrentInstance().invalidate();
-		
-//		BallotTopic newBean = (BallotTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
-//		newBean.initTopic(getTopic().getId());
-
-		return FacesConst.SUCCESS;
-	}
-
-	public void initTopic(Long id)
-	{
-		topic = topicDao.getByKey(id);
-	}
+    private TopicDao topicDao;
+    private ItemDao itemDao;
+    private VoterDao voterDao;
+
+    private BallotState ballotState;
+
+    private Topic topic;
+
+    private Item selectedItem;
+    private Item newItem = new Item();
+
+    public TopicDao getTopicDao()
+    {
+        return topicDao;
+    }
+
+    public void setTopicDao(TopicDao topicDao)
+    {
+        this.topicDao = topicDao;
+    }
+
+    public ItemDao getItemDao()
+    {
+        return itemDao;
+    }
+
+    public void setItemDao(ItemDao itemDao)
+    {
+        this.itemDao = itemDao;
+    }
+
+    public VoterDao getVoterDao()
+    {
+        return voterDao;
+    }
+
+    public void setVoterDao(VoterDao voterDao)
+    {
+        this.voterDao = voterDao;
+    }
+
+    public BallotState getBallotState()
+    {
+        return ballotState;
+    }
+
+    public void setBallotState(BallotState ballotState)
+    {
+        this.ballotState = ballotState;
+    }
+
+    public void initView()
+    {
+        if (topic == null)
+        {
+            String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
+            if (!StringUtils.isEmpty(topicId))
+            {
+                initTopic(Long.valueOf(topicId, 10));
+            }
+            else
+            {
+                setTopic(new Topic());
+            }
+        }
+    }
+
+    public Topic getTopic()
+    {
+        return topic;
+    }
+
+    public void setTopic(Topic topic)
+    {
+        this.topic = topic;
+    }
+
+    public Item getNewItem()
+    {
+        return newItem;
+    }
+
+    public Item getSelectedItem()
+    {
+        return selectedItem;
+    }
+
+    public void setSelectedItem(Item selectedItem)
+    {
+        this.selectedItem = selectedItem;
+    }
+
+    public boolean isTopicEditable()
+    {
+        return topicDao.isNew(getTopic()) || !getTopic().isStarted();
+    }
+
+    public String removeItemAction()
+    {
+        if (topic.getItems() != null)
+        {
+            topic.getItems().remove(getSelectedItem());
+            itemDao.remove(getSelectedItem());
+        }
+        return null;
+    }
+    
+    public String addItemAction()
+    {
+        topic.addItem(getNewItem());
+        newItem = new Item();
+        
+        return null;
+    }
+
+    public String newAction()
+    {
+        BallotTopic newTopic = (BallotTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
+        newTopic.setTopic(new Topic());
+
+        return FacesConst.SUCCESS;
+    }
+    
+    @Transactional
+    public String saveAction()
+    {
+        if (!StringUtils.isEmpty(getNewItem().getContent()))
+        {
+            addItemAction();
+        }
+
+        topic.setOwner(getVoterDao().getByKey(getBallotState().getVoterId()));
+        topicDao.save(topic);
+
+        Conversation.getCurrentInstance().invalidate();
+        
+//        BallotTopic newBean = (BallotTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
+//        newBean.initTopic(getTopic().getId());
+
+        return FacesConst.SUCCESS;
+    }
+
+    public void initTopic(Long id)
+    {
+        topic = topicDao.getByKey(id);
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopicVotes.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopicVotes.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopicVotes.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotTopicVotes.java Thu Jul  3 14:34:56 2008
@@ -47,227 +47,227 @@
 
 public class BallotTopicVotes
 {
-	@PersistenceContext
-	private EntityManager entityManager;
+    @PersistenceContext
+    private EntityManager entityManager;
 
-	private TopicDao topicDao;
-	private VoteDao voteDao;
-	private VoterDao voterDao;
-	private ItemDao itemDao;
-
-	private BallotState ballotState;
-
-	private Topic topic;
-	private Long selectedVoterId;
-
-	private List<ItemInfo> itemInfos;
-	private List<SelectItem> voters;
-
-	public static class ItemInfo
-	{
-		private final Item item;
-		private final Vote vote;
-		private final Long currentVote;
-
-		protected ItemInfo(Item item, Vote vote, Long currentVote)
-		{
-			this.item = item;
-			this.vote = vote;
-			this.currentVote = currentVote;
-		}
-
-		public Item getItem()
-		{
-			return item;
-		}
-
-		public Vote getVote()
-		{
-			return vote;
-		}
-
-		public Long getCurrentVote()
-		{
-			return currentVote;
-		}
-
-		public String getVoteChoice()
-		{
-			StringBuilder choiceText=new StringBuilder();
-			if (getVote().getChoice() > 0)
-			{
-				choiceText.append("+");
-			}
-			else if (getVote().getChoice()<0)
-			{
-				choiceText.append("-");
-			}
-			choiceText.append(Integer.toString(getVote().getChoice()));
-
-			return choiceText.toString();
-		}
-	}
-
-	public BallotState getBallotState()
-	{
-		return ballotState;
-	}
-
-	public void setBallotState(BallotState ballotState)
-	{
-		this.ballotState = ballotState;
-	}
-
-	public TopicDao getTopicDao()
-	{
-		return topicDao;
-	}
-
-	public void setTopicDao(TopicDao topicDao)
-	{
-		this.topicDao = topicDao;
-	}
-
-	public VoteDao getVoteDao()
-	{
-		return voteDao;
-	}
-
-	public void setVoteDao(VoteDao voteDao)
-	{
-		this.voteDao = voteDao;
-	}
-
-	public ItemDao getItemDao()
-	{
-		return itemDao;
-	}
-
-	public void setItemDao(ItemDao itemDao)
-	{
-		this.itemDao = itemDao;
-	}
-
-	public VoterDao getVoterDao()
-	{
-		return voterDao;
-	}
-
-	public void setVoterDao(VoterDao voterDao)
-	{
-		this.voterDao = voterDao;
-	}
-
-	public Long getSelectedVoterId()
-	{
-		return selectedVoterId;
-	}
-
-	public void setSelectedVoterId(Long selectedVoterId)
-	{
-		this.selectedVoterId = selectedVoterId;
-	}
-
-	public void initView()
-	{
-		System.err.println("init view");
-		
-		if (topic == null)
-		{
-			String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
-			if (!StringUtils.isEmpty(topicId))
-			{
-				initTopic(Long.valueOf(topicId, 10));
-			}
-
-			if (getTopic() == null)
-			{
-				FacesUtils.addErrorMessage("not a valid topic");
-
-				redirectToHall();
-				return;
-			}
-		}
-
-		if (getSelectedVoterId() == null)
-		{
-			setSelectedVoterId(getBallotState().getVoterId());
-			if (getSelectedVoterId() != null)
-			{
-				selectVoterAction();
-			}
-		}
-	}
-
-	private void redirectToHall()
-	{
-		FacesContext.getCurrentInstance().getApplication().getNavigationHandler()
-			.handleNavigation(FacesContext.getCurrentInstance(), null, "ballotHall");
-	}
-
-	public void initTopic(Long id)
-	{
-		topic = topicDao.getByKey(id);
-	}
-
-	public Topic getTopic()
-	{
-		return topic;
-	}
-
-	public List<SelectItem> getVoters()
-	{
-		if (voters != null)
-		{
-			return voters;
-		}
-
-		voters = new ArrayList<SelectItem>();
-		for (Voter voter : voterDao.getVoterForTopic(getTopic()))
-		{
-			voters.add(new SelectItem(voter.getId(), voter.getName() +  "(" + voter.getEmail() + ")"));
-		}
-
-		return voters;
-	}
-
-	public String selectVoterAction()
-	{
-		itemInfos = new ArrayList<ItemInfo>();
-
-		if (getSelectedVoterId() == null)
-		{
-			FacesUtils.addErrorMessage("no voter selected");
-			return FacesConst.FAILURE;
-		}
-
-		Voter voter = voterDao.getByKey(getSelectedVoterId());
-
-		Map<Item, Vote> voteMap = new HashMap<Item, Vote>();
-		for (Vote vote : voteDao.getVotesForVoter(voter))
-		{
-			voteMap.put(vote.getItem(), vote);
-		}
-
-		Map<Item, Long> itemVotes = itemDao.getItemVoteSumForTopic(getTopic());
-
-		for (Item item : getTopic().getItems())
-		{
-			Vote vote = voteMap.get(item);
-			if (vote == null)
-			{
-				vote = new Vote();
-				vote.setItem(item);
-				vote.setVoter(voter);
-			}
-			itemInfos.add(new ItemInfo(item, vote, itemVotes.get(item)));
-		}
-
-		return FacesConst.SUCCESS;
-	}
-
-	public List<ItemInfo> getItems()
-	{
-		return itemInfos;
-	}
+    private TopicDao topicDao;
+    private VoteDao voteDao;
+    private VoterDao voterDao;
+    private ItemDao itemDao;
+
+    private BallotState ballotState;
+
+    private Topic topic;
+    private Long selectedVoterId;
+
+    private List<ItemInfo> itemInfos;
+    private List<SelectItem> voters;
+
+    public static class ItemInfo
+    {
+        private final Item item;
+        private final Vote vote;
+        private final Long currentVote;
+
+        protected ItemInfo(Item item, Vote vote, Long currentVote)
+        {
+            this.item = item;
+            this.vote = vote;
+            this.currentVote = currentVote;
+        }
+
+        public Item getItem()
+        {
+            return item;
+        }
+
+        public Vote getVote()
+        {
+            return vote;
+        }
+
+        public Long getCurrentVote()
+        {
+            return currentVote;
+        }
+
+        public String getVoteChoice()
+        {
+            StringBuilder choiceText=new StringBuilder();
+            if (getVote().getChoice() > 0)
+            {
+                choiceText.append("+");
+            }
+            else if (getVote().getChoice()<0)
+            {
+                choiceText.append("-");
+            }
+            choiceText.append(Integer.toString(getVote().getChoice()));
+
+            return choiceText.toString();
+        }
+    }
+
+    public BallotState getBallotState()
+    {
+        return ballotState;
+    }
+
+    public void setBallotState(BallotState ballotState)
+    {
+        this.ballotState = ballotState;
+    }
+
+    public TopicDao getTopicDao()
+    {
+        return topicDao;
+    }
+
+    public void setTopicDao(TopicDao topicDao)
+    {
+        this.topicDao = topicDao;
+    }
+
+    public VoteDao getVoteDao()
+    {
+        return voteDao;
+    }
+
+    public void setVoteDao(VoteDao voteDao)
+    {
+        this.voteDao = voteDao;
+    }
+
+    public ItemDao getItemDao()
+    {
+        return itemDao;
+    }
+
+    public void setItemDao(ItemDao itemDao)
+    {
+        this.itemDao = itemDao;
+    }
+
+    public VoterDao getVoterDao()
+    {
+        return voterDao;
+    }
+
+    public void setVoterDao(VoterDao voterDao)
+    {
+        this.voterDao = voterDao;
+    }
+
+    public Long getSelectedVoterId()
+    {
+        return selectedVoterId;
+    }
+
+    public void setSelectedVoterId(Long selectedVoterId)
+    {
+        this.selectedVoterId = selectedVoterId;
+    }
+
+    public void initView()
+    {
+        System.err.println("init view");
+        
+        if (topic == null)
+        {
+            String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
+            if (!StringUtils.isEmpty(topicId))
+            {
+                initTopic(Long.valueOf(topicId, 10));
+            }
+
+            if (getTopic() == null)
+            {
+                FacesUtils.addErrorMessage("not a valid topic");
+
+                redirectToHall();
+                return;
+            }
+        }
+
+        if (getSelectedVoterId() == null)
+        {
+            setSelectedVoterId(getBallotState().getVoterId());
+            if (getSelectedVoterId() != null)
+            {
+                selectVoterAction();
+            }
+        }
+    }
+
+    private void redirectToHall()
+    {
+        FacesContext.getCurrentInstance().getApplication().getNavigationHandler()
+            .handleNavigation(FacesContext.getCurrentInstance(), null, "ballotHall");
+    }
+
+    public void initTopic(Long id)
+    {
+        topic = topicDao.getByKey(id);
+    }
+
+    public Topic getTopic()
+    {
+        return topic;
+    }
+
+    public List<SelectItem> getVoters()
+    {
+        if (voters != null)
+        {
+            return voters;
+        }
+
+        voters = new ArrayList<SelectItem>();
+        for (Voter voter : voterDao.getVoterForTopic(getTopic()))
+        {
+            voters.add(new SelectItem(voter.getId(), voter.getName() +  "(" + voter.getEmail() + ")"));
+        }
+
+        return voters;
+    }
+
+    public String selectVoterAction()
+    {
+        itemInfos = new ArrayList<ItemInfo>();
+
+        if (getSelectedVoterId() == null)
+        {
+            FacesUtils.addErrorMessage("no voter selected");
+            return FacesConst.FAILURE;
+        }
+
+        Voter voter = voterDao.getByKey(getSelectedVoterId());
+
+        Map<Item, Vote> voteMap = new HashMap<Item, Vote>();
+        for (Vote vote : voteDao.getVotesForVoter(voter))
+        {
+            voteMap.put(vote.getItem(), vote);
+        }
+
+        Map<Item, Long> itemVotes = itemDao.getItemVoteSumForTopic(getTopic());
+
+        for (Item item : getTopic().getItems())
+        {
+            Vote vote = voteMap.get(item);
+            if (vote == null)
+            {
+                vote = new Vote();
+                vote.setItem(item);
+                vote.setVoter(voter);
+            }
+            itemInfos.add(new ItemInfo(item, vote, itemVotes.get(item)));
+        }
+
+        return FacesConst.SUCCESS;
+    }
+
+    public List<ItemInfo> getItems()
+    {
+        return itemInfos;
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopic.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopic.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopic.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopic.java Thu Jul  3 14:34:56 2008
@@ -57,317 +57,317 @@
 
 public class BallotVoteTopic
 {
-	private PlatformTransactionManager transactionManager;
+    private PlatformTransactionManager transactionManager;
 
-	private TopicDao topicDao;
-	private VoteDao voteDao;
-	private VoterDao voterDao;
-	private ItemDao itemDao;
-
-	private BallotState ballotState;
-	private BallotVoteTopicCmp ballotVoteTopicCmp;
-
-	private Topic topic;
-
-	private List<ItemInfo> itemInfos;
-	private List<SelectItem> choices;
-
-	private JavaMailSender mailSender;
-
-	public static class ItemInfo
-	{
-		private final Item item;
-		private final Vote vote;
-		private final Long currentVote;
-
-		protected ItemInfo(Item item, Vote vote, Long currentVote)
-		{
-			this.item = item;
-			this.vote = vote;
-			this.currentVote = currentVote;
-		}
-
-		public Item getItem()
-		{
-			return item;
-		}
-
-		public Vote getVote()
-		{
-			return vote;
-		}
-
-		public Long getCurrentVote()
-		{
-			return currentVote;
-		}
-	}
-
-	public BallotVoteTopicCmp getBallotVoteTopicCmp()
-	{
-		return ballotVoteTopicCmp;
-	}
-
-	public void setBallotVoteTopicCmp(BallotVoteTopicCmp ballotVoteTopicCmp)
-	{
-		this.ballotVoteTopicCmp = ballotVoteTopicCmp;
-	}
-
-	public PlatformTransactionManager getTransactionManager()
-	{
-		return transactionManager;
-	}
-
-	public void setTransactionManager(PlatformTransactionManager transactionManager)
-	{
-		this.transactionManager = transactionManager;
-	}
-
-	public JavaMailSender getMailSender()
-	{
-		return mailSender;
-	}
-
-	public void setMailSender(JavaMailSender mailSender)
-	{
-		this.mailSender = mailSender;
-	}
-
-	public BallotState getBallotState()
-	{
-		return ballotState;
-	}
-
-	public void setBallotState(BallotState ballotState)
-	{
-		this.ballotState = ballotState;
-	}
-
-	public TopicDao getTopicDao()
-	{
-		return topicDao;
-	}
-
-	public void setTopicDao(TopicDao topicDao)
-	{
-		this.topicDao = topicDao;
-	}
-
-	public VoteDao getVoteDao()
-	{
-		return voteDao;
-	}
-
-	public void setVoteDao(VoteDao voteDao)
-	{
-		this.voteDao = voteDao;
-	}
-
-	public ItemDao getItemDao()
-	{
-		return itemDao;
-	}
-
-	public void setItemDao(ItemDao itemDao)
-	{
-		this.itemDao = itemDao;
-	}
-
-	public VoterDao getVoterDao()
-	{
-		return voterDao;
-	}
-
-	public void setVoterDao(VoterDao voterDao)
-	{
-		this.voterDao = voterDao;
-	}
-
-	public void initView()
-	{
-		if (!getBallotState().isAuthenticated())
-		{
-			FacesUtils.addErrorMessage("you are not authenticated");
-
-			redirectToHall();
-			return;
-		}
-
-		if (topic == null)
-		{
-			String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
-			if (!StringUtils.isEmpty(topicId))
-			{
-				initTopic(Long.valueOf(topicId, 10));
-			}
-
-			if (getTopic() == null)
-			{
-				FacesUtils.addErrorMessage("not a valid topic");
-
-				redirectToHall();
-				return;
-			}
-		}
-	}
-
-	private void redirectToHall()
-	{
-		FacesContext.getCurrentInstance().getApplication().getNavigationHandler()
-			.handleNavigation(FacesContext.getCurrentInstance(), null, "ballotHall");
-	}
-
-	public void initTopic(Long id)
-	{
-		topic = topicDao.getByKey(id);
-	}
-	
-	public Topic getTopic()
-	{
-		return topic;
-	}
-
-	public void voteChanged(ValueChangeEvent event)
-	{
-		Date now = new Date();
-
-		ItemInfo itemInfo = (ItemInfo) getBallotVoteTopicCmp().getItemInfoTable().getRowData();
-		Vote vote = itemInfo.getVote();
-		vote.setChanged(now);
-		
-		ServletRequest sr = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
-		vote.setRemoteIp(sr.getRemoteAddr());
-	}
-
-	public List<ItemInfo> getItems()
-	{
-		if (itemInfos != null)
-		{
-			return itemInfos;
-		}
-
-		itemInfos = new ArrayList<ItemInfo>();
-
-		Voter voter = voterDao.getByKey(getBallotState().getVoterId());
-
-		Map<Item, Vote> voteMap = new HashMap<Item, Vote>();
-		for (Vote vote : voteDao.getVotesForVoter(voter))
-		{
-			voteMap.put(vote.getItem(), vote);
-		}
-
-		Map<Item, Long> itemVotes = itemDao.getItemVoteSumForTopic(getTopic());
-
-		for (Item item : getTopic().getItems())
-		{
-			Vote vote = voteMap.get(item);
-			if (vote == null)
-			{
-				vote = new Vote();
-				vote.setItem(item);
-				vote.setVoter(voter);
-			}
-			itemInfos.add(new ItemInfo(item, vote, itemVotes.get(item)));
-		}
-
-		return itemInfos;
-	}
-
-	public String saveAction() throws MessagingException
-	{
-		int voteCount = 0;
-
-		StringWriter sw = new StringWriter();
-		PrintWriter out = new PrintWriter(sw);
-		out.println("Hi!");
-		out.println();
-		out.println("A new vote has been placed by:");
-		Voter voter = voterDao.getByKey(getBallotState().getVoterId());
-		out.println(voter.getId() + " " + voter.getEmail() + " " + voter.getName());
-		out.println();
-		out.println("Topic:");
-		out.println(getTopic().getName());
-
-		for (ItemInfo itemInfo : itemInfos)
-		{
-			if (itemInfo.getVote().getChoice() != 0)
-			{
-				voteCount++;
-			}
-
-			Date now = new Date();
-
-			Vote vote = itemInfo.getVote();
-			if (vote.getCreated() == null)
-			{
-				vote.setCreated(now);
-			}
-
-			if (vote.getRemoteIp() == null)
-			{
-				ServletRequest sr = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
-				vote.setRemoteIp(sr.getRemoteAddr());
-			}
-
-			voteDao.save(vote);
-
-			out.println(vote.getItem().getContent() + " " + vote.getChoice());
-		}
-		out.println();
-		out.println("See you,");
-		out.println("The Voting Machine - Ballot");
-		out.close();
-
-		if (voteCount != getTopic().getMaxVoteCount())
-		{
-			FacesUtils.addErrorMessage("you have to choose (not 0 vote) exactly '" + getTopic().getMaxVoteCount() + "' items");
-			return FacesConst.FAILURE;
-		}
-		
-		SpringUtils.commit(transactionManager);
-
-		SendMail.sendMail(mailSender,
-			getTopic().getOwner().getEmail(),
-			getTopic().getOwner().getEmail(),
-			"A new vote from " + voter.getName(),
-			sw.toString());
-
-		SendMail.sendMail(mailSender,
-			getTopic().getOwner().getEmail(),
-			voter.getEmail(),
-			"Your vote for " + getTopic().getName(),
-			sw.toString());
-
-		BallotVoteTopic newBallotVoteTopic = (BallotVoteTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
-		newBallotVoteTopic.initTopic(getTopic().getId());
-
-		FacesUtils.addInfoMessage("vote accepted, you should get a email as approvement");
-		return FacesConst.SUCCESS;
-	}
-
-	public List<SelectItem> getChoices()
-	{
-		if (choices != null)
-		{
-			return choices;
-		}
-
-		choices = new ArrayList<SelectItem>();
-		for (int i = getTopic().getMinVote(); i < (getTopic().getMaxVote()+1); i++)
-		{
-			StringBuilder choiceText=new StringBuilder();
-			if (i > 0)
-			{
-				choiceText.append("+");
-			}
-			else if (i<0)
-			{
-				choiceText.append("-");
-			}
-			choiceText.append(Integer.toString(i));
-			choices.add(new SelectItem(i, choiceText.toString()));
-		}
+    private TopicDao topicDao;
+    private VoteDao voteDao;
+    private VoterDao voterDao;
+    private ItemDao itemDao;
+
+    private BallotState ballotState;
+    private BallotVoteTopicCmp ballotVoteTopicCmp;
+
+    private Topic topic;
+
+    private List<ItemInfo> itemInfos;
+    private List<SelectItem> choices;
+
+    private JavaMailSender mailSender;
+
+    public static class ItemInfo
+    {
+        private final Item item;
+        private final Vote vote;
+        private final Long currentVote;
+
+        protected ItemInfo(Item item, Vote vote, Long currentVote)
+        {
+            this.item = item;
+            this.vote = vote;
+            this.currentVote = currentVote;
+        }
+
+        public Item getItem()
+        {
+            return item;
+        }
+
+        public Vote getVote()
+        {
+            return vote;
+        }
+
+        public Long getCurrentVote()
+        {
+            return currentVote;
+        }
+    }
+
+    public BallotVoteTopicCmp getBallotVoteTopicCmp()
+    {
+        return ballotVoteTopicCmp;
+    }
+
+    public void setBallotVoteTopicCmp(BallotVoteTopicCmp ballotVoteTopicCmp)
+    {
+        this.ballotVoteTopicCmp = ballotVoteTopicCmp;
+    }
+
+    public PlatformTransactionManager getTransactionManager()
+    {
+        return transactionManager;
+    }
+
+    public void setTransactionManager(PlatformTransactionManager transactionManager)
+    {
+        this.transactionManager = transactionManager;
+    }
+
+    public JavaMailSender getMailSender()
+    {
+        return mailSender;
+    }
+
+    public void setMailSender(JavaMailSender mailSender)
+    {
+        this.mailSender = mailSender;
+    }
+
+    public BallotState getBallotState()
+    {
+        return ballotState;
+    }
+
+    public void setBallotState(BallotState ballotState)
+    {
+        this.ballotState = ballotState;
+    }
+
+    public TopicDao getTopicDao()
+    {
+        return topicDao;
+    }
+
+    public void setTopicDao(TopicDao topicDao)
+    {
+        this.topicDao = topicDao;
+    }
+
+    public VoteDao getVoteDao()
+    {
+        return voteDao;
+    }
+
+    public void setVoteDao(VoteDao voteDao)
+    {
+        this.voteDao = voteDao;
+    }
+
+    public ItemDao getItemDao()
+    {
+        return itemDao;
+    }
+
+    public void setItemDao(ItemDao itemDao)
+    {
+        this.itemDao = itemDao;
+    }
+
+    public VoterDao getVoterDao()
+    {
+        return voterDao;
+    }
+
+    public void setVoterDao(VoterDao voterDao)
+    {
+        this.voterDao = voterDao;
+    }
+
+    public void initView()
+    {
+        if (!getBallotState().isAuthenticated())
+        {
+            FacesUtils.addErrorMessage("you are not authenticated");
+
+            redirectToHall();
+            return;
+        }
+
+        if (topic == null)
+        {
+            String topicId = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("topicId");
+            if (!StringUtils.isEmpty(topicId))
+            {
+                initTopic(Long.valueOf(topicId, 10));
+            }
+
+            if (getTopic() == null)
+            {
+                FacesUtils.addErrorMessage("not a valid topic");
+
+                redirectToHall();
+                return;
+            }
+        }
+    }
+
+    private void redirectToHall()
+    {
+        FacesContext.getCurrentInstance().getApplication().getNavigationHandler()
+            .handleNavigation(FacesContext.getCurrentInstance(), null, "ballotHall");
+    }
+
+    public void initTopic(Long id)
+    {
+        topic = topicDao.getByKey(id);
+    }
+    
+    public Topic getTopic()
+    {
+        return topic;
+    }
+
+    public void voteChanged(ValueChangeEvent event)
+    {
+        Date now = new Date();
+
+        ItemInfo itemInfo = (ItemInfo) getBallotVoteTopicCmp().getItemInfoTable().getRowData();
+        Vote vote = itemInfo.getVote();
+        vote.setChanged(now);
+        
+        ServletRequest sr = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
+        vote.setRemoteIp(sr.getRemoteAddr());
+    }
+
+    public List<ItemInfo> getItems()
+    {
+        if (itemInfos != null)
+        {
+            return itemInfos;
+        }
+
+        itemInfos = new ArrayList<ItemInfo>();
+
+        Voter voter = voterDao.getByKey(getBallotState().getVoterId());
+
+        Map<Item, Vote> voteMap = new HashMap<Item, Vote>();
+        for (Vote vote : voteDao.getVotesForVoter(voter))
+        {
+            voteMap.put(vote.getItem(), vote);
+        }
+
+        Map<Item, Long> itemVotes = itemDao.getItemVoteSumForTopic(getTopic());
+
+        for (Item item : getTopic().getItems())
+        {
+            Vote vote = voteMap.get(item);
+            if (vote == null)
+            {
+                vote = new Vote();
+                vote.setItem(item);
+                vote.setVoter(voter);
+            }
+            itemInfos.add(new ItemInfo(item, vote, itemVotes.get(item)));
+        }
+
+        return itemInfos;
+    }
+
+    public String saveAction() throws MessagingException
+    {
+        int voteCount = 0;
+
+        StringWriter sw = new StringWriter();
+        PrintWriter out = new PrintWriter(sw);
+        out.println("Hi!");
+        out.println();
+        out.println("A new vote has been placed by:");
+        Voter voter = voterDao.getByKey(getBallotState().getVoterId());
+        out.println(voter.getId() + " " + voter.getEmail() + " " + voter.getName());
+        out.println();
+        out.println("Topic:");
+        out.println(getTopic().getName());
+
+        for (ItemInfo itemInfo : itemInfos)
+        {
+            if (itemInfo.getVote().getChoice() != 0)
+            {
+                voteCount++;
+            }
+
+            Date now = new Date();
+
+            Vote vote = itemInfo.getVote();
+            if (vote.getCreated() == null)
+            {
+                vote.setCreated(now);
+            }
+
+            if (vote.getRemoteIp() == null)
+            {
+                ServletRequest sr = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
+                vote.setRemoteIp(sr.getRemoteAddr());
+            }
+
+            voteDao.save(vote);
+
+            out.println(vote.getItem().getContent() + " " + vote.getChoice());
+        }
+        out.println();
+        out.println("See you,");
+        out.println("The Voting Machine - Ballot");
+        out.close();
+
+        if (voteCount != getTopic().getMaxVoteCount())
+        {
+            FacesUtils.addErrorMessage("you have to choose (not 0 vote) exactly '" + getTopic().getMaxVoteCount() + "' items");
+            return FacesConst.FAILURE;
+        }
+        
+        SpringUtils.commit(transactionManager);
+
+        SendMail.sendMail(mailSender,
+            getTopic().getOwner().getEmail(),
+            getTopic().getOwner().getEmail(),
+            "A new vote from " + voter.getName(),
+            sw.toString());
+
+        SendMail.sendMail(mailSender,
+            getTopic().getOwner().getEmail(),
+            voter.getEmail(),
+            "Your vote for " + getTopic().getName(),
+            sw.toString());
+
+        BallotVoteTopic newBallotVoteTopic = (BallotVoteTopic) ConversationUtils.invalidateAndRestart(Conversation.getCurrentInstance());
+        newBallotVoteTopic.initTopic(getTopic().getId());
+
+        FacesUtils.addInfoMessage("vote accepted, you should get a email as approvement");
+        return FacesConst.SUCCESS;
+    }
+
+    public List<SelectItem> getChoices()
+    {
+        if (choices != null)
+        {
+            return choices;
+        }
+
+        choices = new ArrayList<SelectItem>();
+        for (int i = getTopic().getMinVote(); i < (getTopic().getMaxVote()+1); i++)
+        {
+            StringBuilder choiceText=new StringBuilder();
+            if (i > 0)
+            {
+                choiceText.append("+");
+            }
+            else if (i<0)
+            {
+                choiceText.append("-");
+            }
+            choiceText.append(Integer.toString(i));
+            choices.add(new SelectItem(i, choiceText.toString()));
+        }
 
-		return choices;
-	}
+        return choices;
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopicCmp.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopicCmp.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopicCmp.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoteTopicCmp.java Thu Jul  3 14:34:56 2008
@@ -26,15 +26,15 @@
 
 public class BallotVoteTopicCmp
 {
-	private UIData itemInfoTable;
+    private UIData itemInfoTable;
 
-	public UIData getItemInfoTable()
-	{
-		return itemInfoTable;
-	}
+    public UIData getItemInfoTable()
+    {
+        return itemInfoTable;
+    }
 
-	public void setItemInfoTable(UIData itemInfoTable)
-	{
-		this.itemInfoTable = itemInfoTable;
-	}
+    public void setItemInfoTable(UIData itemInfoTable)
+    {
+        this.itemInfoTable = itemInfoTable;
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoter.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoter.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoter.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/backings/BallotVoter.java Thu Jul  3 14:34:56 2008
@@ -38,198 +38,198 @@
 
 public class BallotVoter
 {
-	private PlatformTransactionManager transactionManager;
+    private PlatformTransactionManager transactionManager;
 
-	private VoterDao voterDao;
-	private Voter voter;
-	private BallotState ballotState;
-	private String requestEmail;
-
-	private JavaMailSender mailSender;
-
-	public JavaMailSender getMailSender()
-	{
-		return mailSender;
-	}
-
-	public void setMailSender(JavaMailSender mailSender)
-	{
-		this.mailSender = mailSender;
-	}
-
-	public PlatformTransactionManager getTransactionManager()
-	{
-		return transactionManager;
-	}
-
-	public void setTransactionManager(PlatformTransactionManager transactionManager)
-	{
-		this.transactionManager = transactionManager;
-	}
-
-	public Voter getVoter()
-	{
-		return voter;
-	}
-
-	public void setVoter(Voter voter)
-	{
-		this.voter = voter;
-	}
-
-	public VoterDao getVoterDao()
-	{
-		return voterDao;
-	}
-
-	public void setVoterDao(VoterDao voterDao)
-	{
-		this.voterDao = voterDao;
-	}
-
-	public BallotState getBallotState()
-	{
-		return ballotState;
-	}
-
-	public void setBallotState(BallotState ballotState)
-	{
-		this.ballotState = ballotState;
-	}
-
-	public void initView()
-	{
-		if (getBallotState().getVoterId() != null)
-		{
-			setVoter(getVoterDao().getByKey(getBallotState().getVoterId()));
-		}
-		else
-		{
-			setVoter(new Voter());
-		}
-	}
-
-	public String getRequestEmail()
-	{
-		return requestEmail;
-	}
-
-	public void setRequestEmail(String requestEmail)
-	{
-		this.requestEmail = requestEmail;
-	}
-
-	public boolean isNewVoter()
-	{
-		return getVoterDao().isNew(getVoter());
-	}
-
-	/**
-	 * here we use programmatic transaction handling instead of declarative to allow to
-	 * leave the mehtod without exception and without having to flush in case of an failure
-	 */
-	public String saveAction() throws MessagingException
-	{
-		boolean isNew = getVoterDao().isNew(getVoter());
-
-		if (isNew)
-		{
-			if (getVoterDao().getVoterByEmail(getVoter().getEmail()) != null)
-			{
-				FacesUtils.addErrorMessage("there is already a voter with this email address registered");
-				return FacesConst.FAILURE;
-			}
-
-			getVoter().setIdentification(createIdentification());
-		}
-
-		getVoterDao().save(getVoter());
-		getBallotState().setVoterId(getVoter().getId());
-
-		SpringUtils.commit(transactionManager);
-
-		if (isNew)
-		{
-			sendMail(getVoter().getEmail());
-
-			FacesUtils.addInfoMessage("a mail has been sent to you, use the link in this mail to start using this system");
-		}
-
-		Conversation.getCurrentInstance().invalidate();
-		return FacesConst.SUCCESS;
-	}
-
-	public String requestCookieAction() throws MessagingException
-	{
-		if (voterDao.getVoterByEmail(getRequestEmail()) == null)
-		{
-			FacesUtils.addErrorMessage("no voter with the given e-mail address found");
-			return FacesConst.FAILURE;
-		}
-
-		sendMail(getRequestEmail());
-		return FacesConst.SUCCESS;
-	}
-
-	protected String createIdentification()
-	{
-		String identification;
-		do
-		{
-			UUID uuid = UUID.randomUUID();
-			identification=uuid.toString();
-		}
-		while (getVoterDao().existsIdentification(identification));
-
-		return identification;
-	}
-
-	// XXX: in reality we should use a velocity template here
-	protected void sendMail(String email) throws MessagingException
-	{
-		Voter voter = getVoterDao().getVoterByEmail(email);
-
-		HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
-
-		StringBuffer url = new StringBuffer();
-		url.append(req.getScheme());
-		url.append("://");
-		url.append(req.getServerName());
-		if (("http".equals(req.getScheme()) && req.getServerPort() != 80)
-		|| ("https".equals(req.getScheme()) && req.getServerPort() != 443))
-		{
-			url.append(":");
-			url.append(req.getServerPort());
-		}
-		url.append(req.getContextPath());
-		url.append("/ballot/Hall.faces");
-		url.append("?uid=");
-		url.append(voter.getId());
-		url.append("&uuid=");
-		url.append(voter.getIdentification());
-
-
-		StringWriter sw = new StringWriter();
-		PrintWriter out = new PrintWriter(sw);
-
-		out.println("Hi " + voter.getName() + "!");
-		out.println("");
-		out.println("We are happy that your are willing to participate in the voting process.");
-		out.println("");
-		out.println("Please use the url below to login to the voting application.");
-		out.println("");
-		out.println(url.toString());
-		out.println("");
-		out.println("See you,");
-		out.println("The Voting Machine - Ballot");
-
-		out.close();
-
-		SendMail.sendMail(
-			mailSender,
-			"mario@ops.co.at",
-			voter.getEmail(),
-			"Login Url For The Voting Machine",
-			sw.toString());
-	}
+    private VoterDao voterDao;
+    private Voter voter;
+    private BallotState ballotState;
+    private String requestEmail;
+
+    private JavaMailSender mailSender;
+
+    public JavaMailSender getMailSender()
+    {
+        return mailSender;
+    }
+
+    public void setMailSender(JavaMailSender mailSender)
+    {
+        this.mailSender = mailSender;
+    }
+
+    public PlatformTransactionManager getTransactionManager()
+    {
+        return transactionManager;
+    }
+
+    public void setTransactionManager(PlatformTransactionManager transactionManager)
+    {
+        this.transactionManager = transactionManager;
+    }
+
+    public Voter getVoter()
+    {
+        return voter;
+    }
+
+    public void setVoter(Voter voter)
+    {
+        this.voter = voter;
+    }
+
+    public VoterDao getVoterDao()
+    {
+        return voterDao;
+    }
+
+    public void setVoterDao(VoterDao voterDao)
+    {
+        this.voterDao = voterDao;
+    }
+
+    public BallotState getBallotState()
+    {
+        return ballotState;
+    }
+
+    public void setBallotState(BallotState ballotState)
+    {
+        this.ballotState = ballotState;
+    }
+
+    public void initView()
+    {
+        if (getBallotState().getVoterId() != null)
+        {
+            setVoter(getVoterDao().getByKey(getBallotState().getVoterId()));
+        }
+        else
+        {
+            setVoter(new Voter());
+        }
+    }
+
+    public String getRequestEmail()
+    {
+        return requestEmail;
+    }
+
+    public void setRequestEmail(String requestEmail)
+    {
+        this.requestEmail = requestEmail;
+    }
+
+    public boolean isNewVoter()
+    {
+        return getVoterDao().isNew(getVoter());
+    }
+
+    /**
+     * here we use programmatic transaction handling instead of declarative to allow to
+     * leave the mehtod without exception and without having to flush in case of an failure
+     */
+    public String saveAction() throws MessagingException
+    {
+        boolean isNew = getVoterDao().isNew(getVoter());
+
+        if (isNew)
+        {
+            if (getVoterDao().getVoterByEmail(getVoter().getEmail()) != null)
+            {
+                FacesUtils.addErrorMessage("there is already a voter with this email address registered");
+                return FacesConst.FAILURE;
+            }
+
+            getVoter().setIdentification(createIdentification());
+        }
+
+        getVoterDao().save(getVoter());
+        getBallotState().setVoterId(getVoter().getId());
+
+        SpringUtils.commit(transactionManager);
+
+        if (isNew)
+        {
+            sendMail(getVoter().getEmail());
+
+            FacesUtils.addInfoMessage("a mail has been sent to you, use the link in this mail to start using this system");
+        }
+
+        Conversation.getCurrentInstance().invalidate();
+        return FacesConst.SUCCESS;
+    }
+
+    public String requestCookieAction() throws MessagingException
+    {
+        if (voterDao.getVoterByEmail(getRequestEmail()) == null)
+        {
+            FacesUtils.addErrorMessage("no voter with the given e-mail address found");
+            return FacesConst.FAILURE;
+        }
+
+        sendMail(getRequestEmail());
+        return FacesConst.SUCCESS;
+    }
+
+    protected String createIdentification()
+    {
+        String identification;
+        do
+        {
+            UUID uuid = UUID.randomUUID();
+            identification=uuid.toString();
+        }
+        while (getVoterDao().existsIdentification(identification));
+
+        return identification;
+    }
+
+    // XXX: in reality we should use a velocity template here
+    protected void sendMail(String email) throws MessagingException
+    {
+        Voter voter = getVoterDao().getVoterByEmail(email);
+
+        HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
+
+        StringBuffer url = new StringBuffer();
+        url.append(req.getScheme());
+        url.append("://");
+        url.append(req.getServerName());
+        if (("http".equals(req.getScheme()) && req.getServerPort() != 80)
+        || ("https".equals(req.getScheme()) && req.getServerPort() != 443))
+        {
+            url.append(":");
+            url.append(req.getServerPort());
+        }
+        url.append(req.getContextPath());
+        url.append("/ballot/Hall.faces");
+        url.append("?uid=");
+        url.append(voter.getId());
+        url.append("&uuid=");
+        url.append(voter.getIdentification());
+
+
+        StringWriter sw = new StringWriter();
+        PrintWriter out = new PrintWriter(sw);
+
+        out.println("Hi " + voter.getName() + "!");
+        out.println("");
+        out.println("We are happy that your are willing to participate in the voting process.");
+        out.println("");
+        out.println("Please use the url below to login to the voting application.");
+        out.println("");
+        out.println(url.toString());
+        out.println("");
+        out.println("See you,");
+        out.println("The Voting Machine - Ballot");
+
+        out.close();
+
+        SendMail.sendMail(
+            mailSender,
+            "mario@ops.co.at",
+            voter.getEmail(),
+            "Login Url For The Voting Machine",
+            sw.toString());
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ItemDao.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ItemDao.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ItemDao.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/ItemDao.java Thu Jul  3 14:34:56 2008
@@ -35,36 +35,36 @@
 
 public class ItemDao
 {
-	@PersistenceContext
-	private EntityManager entityManager;
+    @PersistenceContext
+    private EntityManager entityManager;
 
-	public Map<Item, Long> getItemVoteSumForTopic(Topic topic)
-	{
-		Map<Item, Long> ret = new HashMap<Item, Long>();
-
-		Query query = entityManager.createQuery("select vote.item.id, sum(vote.choice) from Vote vote where vote.item.topic = :topic group by vote.item.id");
-		query.setParameter("topic", topic);
-
-		@SuppressWarnings("unchecked")
-		List<Object[]> itemsRet = query.getResultList();
-		for (Object[] itemRet : itemsRet)
-		{
-			Long itemId = (Long) itemRet[0];
-			Long count = (Long) itemRet[1];
-
-			ret.put(getByKey(itemId), count);
-		}
-
-		return ret;
-	}
-
-	private Item getByKey(Long id)
-	{
-		return entityManager.find(Item.class, id);
-	}
-
-	public void remove(Item item)
-	{
-		entityManager.remove(item);
-	}
+    public Map<Item, Long> getItemVoteSumForTopic(Topic topic)
+    {
+        Map<Item, Long> ret = new HashMap<Item, Long>();
+
+        Query query = entityManager.createQuery("select vote.item.id, sum(vote.choice) from Vote vote where vote.item.topic = :topic group by vote.item.id");
+        query.setParameter("topic", topic);
+
+        @SuppressWarnings("unchecked")
+        List<Object[]> itemsRet = query.getResultList();
+        for (Object[] itemRet : itemsRet)
+        {
+            Long itemId = (Long) itemRet[0];
+            Long count = (Long) itemRet[1];
+
+            ret.put(getByKey(itemId), count);
+        }
+
+        return ret;
+    }
+
+    private Item getByKey(Long id)
+    {
+        return entityManager.find(Item.class, id);
+    }
+
+    public void remove(Item item)
+    {
+        entityManager.remove(item);
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/TopicDao.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/TopicDao.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/TopicDao.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/TopicDao.java Thu Jul  3 14:34:56 2008
@@ -30,47 +30,47 @@
 
 public class TopicDao
 {
-	@PersistenceContext
-	private EntityManager entityManager;
+    @PersistenceContext
+    private EntityManager entityManager;
 
-	@SuppressWarnings("unchecked")
-	public List<Topic> getTopics()
-	{
-		Query query = entityManager.createQuery("select topic from Topic topic order by topic.name");
-		return query.getResultList();
-	}
-
-	public Map<Long, Long> getTopicVotes()
-	{
-		Map<Long, Long> ret = new TreeMap<Long, Long>();
-
-		Query query = entityManager.createNamedQuery("getVotes");
-		List votes = query.getResultList();
-		for (Object vote : votes)
-		{
-			Object[] columns = (Object[]) vote;
-
-			Long id = (Long) columns[0];
-			Long voteCount = (Long) columns[1];
-
-			ret.put(id, voteCount);
-		}
-
-		return ret;
-	}
-
-	public Topic getByKey(Long key)
-	{
-		return entityManager.find(Topic.class, key);
-	}
-
-	public void save(Topic topic)
-	{
-		entityManager.persist(topic);
-	}
-
-	public boolean isNew(Topic topic)
-	{
-		return !entityManager.contains(topic);
-	}
+    @SuppressWarnings("unchecked")
+    public List<Topic> getTopics()
+    {
+        Query query = entityManager.createQuery("select topic from Topic topic order by topic.name");
+        return query.getResultList();
+    }
+
+    public Map<Long, Long> getTopicVotes()
+    {
+        Map<Long, Long> ret = new TreeMap<Long, Long>();
+
+        Query query = entityManager.createNamedQuery("getVotes");
+        List votes = query.getResultList();
+        for (Object vote : votes)
+        {
+            Object[] columns = (Object[]) vote;
+
+            Long id = (Long) columns[0];
+            Long voteCount = (Long) columns[1];
+
+            ret.put(id, voteCount);
+        }
+
+        return ret;
+    }
+
+    public Topic getByKey(Long key)
+    {
+        return entityManager.find(Topic.class, key);
+    }
+
+    public void save(Topic topic)
+    {
+        entityManager.persist(topic);
+    }
+
+    public boolean isNew(Topic topic)
+    {
+        return !entityManager.contains(topic);
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoteDao.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoteDao.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoteDao.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoteDao.java Thu Jul  3 14:34:56 2008
@@ -33,19 +33,19 @@
 
 public class VoteDao
 {
-	@PersistenceContext
-	private EntityManager entityManager;
+    @PersistenceContext
+    private EntityManager entityManager;
 
-	@SuppressWarnings("unchecked")
-	public List<Vote> getVotesForVoter(Voter voter)
-	{
-		Query query = entityManager.createNamedQuery("getVotesForVoter");
-		query.setParameter("voter", voter);
-		return query.getResultList();
-	}
+    @SuppressWarnings("unchecked")
+    public List<Vote> getVotesForVoter(Voter voter)
+    {
+        Query query = entityManager.createNamedQuery("getVotesForVoter");
+        query.setParameter("voter", voter);
+        return query.getResultList();
+    }
 
-	public void save(Vote vote)
-	{
-		entityManager.persist(vote);
-	}
+    public void save(Vote vote)
+    {
+        entityManager.persist(vote);
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoterDao.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoterDao.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoterDao.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/dao/VoterDao.java Thu Jul  3 14:34:56 2008
@@ -34,68 +34,68 @@
 
 public class VoterDao
 {
-	@PersistenceContext
-	private EntityManager entityManager;
+    @PersistenceContext
+    private EntityManager entityManager;
 
-	public Voter getByKey(Long id)
-	{
-		return entityManager.find(Voter.class, id);
-	}
-
-	public Voter getVoterByEmail(String email)
-	{
-		Query query = entityManager.createNamedQuery("getVoterByEmail");
-		query.setParameter("email", email);
-		try
-		{
-			return (Voter) query.getSingleResult();
-		}
-		catch (NoResultException e)
-		{
-			return null;
-		}
-	}
-
-	public void save(Voter voter)
-	{
-		entityManager.persist(voter);
-	}
-
-	public boolean isNew(Voter voter)
-	{
-		return !entityManager.contains(voter);
-	}
-
-	public boolean existsIdentification(String identification)
-	{
-		return getVoterByIdentification(identification) != null;
-	}
-
-	protected Voter getVoterByIdentification(String identification)
-	{
-		Query query = entityManager.createNamedQuery("getVoterByIdentification");
-		query.setParameter("identification", identification);
-		try
-		{
-			return (Voter) query.getSingleResult();
-		}
-		catch (NoResultException e)
-		{
-			return null;
-		}
-	}
-
-	public boolean existsVoter(String identification, String mail)
-	{
-		Voter voter = getVoterByIdentification(identification);
-		return voter != null && voter.getEmail().equals(mail);
-	}
-
-	@SuppressWarnings("unchecked")
-	public List<Voter> getVoterForTopic(Topic topic)
-	{
-		Query query = entityManager.createNamedQuery("getVoterForTopic");
-		query.setParameter("topic", topic);
-		return query.getResultList();
-	}
+    public Voter getByKey(Long id)
+    {
+        return entityManager.find(Voter.class, id);
+    }
+
+    public Voter getVoterByEmail(String email)
+    {
+        Query query = entityManager.createNamedQuery("getVoterByEmail");
+        query.setParameter("email", email);
+        try
+        {
+            return (Voter) query.getSingleResult();
+        }
+        catch (NoResultException e)
+        {
+            return null;
+        }
+    }
+
+    public void save(Voter voter)
+    {
+        entityManager.persist(voter);
+    }
+
+    public boolean isNew(Voter voter)
+    {
+        return !entityManager.contains(voter);
+    }
+
+    public boolean existsIdentification(String identification)
+    {
+        return getVoterByIdentification(identification) != null;
+    }
+
+    protected Voter getVoterByIdentification(String identification)
+    {
+        Query query = entityManager.createNamedQuery("getVoterByIdentification");
+        query.setParameter("identification", identification);
+        try
+        {
+            return (Voter) query.getSingleResult();
+        }
+        catch (NoResultException e)
+        {
+            return null;
+        }
+    }
+
+    public boolean existsVoter(String identification, String mail)
+    {
+        Voter voter = getVoterByIdentification(identification);
+        return voter != null && voter.getEmail().equals(mail);
+    }
+
+    @SuppressWarnings("unchecked")
+    public List<Voter> getVoterForTopic(Topic topic)
+    {
+        Query query = entityManager.createNamedQuery("getVoterForTopic");
+        query.setParameter("topic", topic);
+        return query.getResultList();
+    }
 }
\ No newline at end of file

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/BallotState.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/BallotState.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/BallotState.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/BallotState.java Thu Jul  3 14:34:56 2008
@@ -20,26 +20,26 @@
 
 public class BallotState
 {
-	private Long voterId;
-	private boolean authenticated;
+    private Long voterId;
+    private boolean authenticated;
 
-	public Long getVoterId()
-	{
-		return voterId;
-	}
+    public Long getVoterId()
+    {
+        return voterId;
+    }
 
-	public void setVoterId(Long voterId)
-	{
-		this.voterId = voterId;
-	}
+    public void setVoterId(Long voterId)
+    {
+        this.voterId = voterId;
+    }
 
-	public void setAuthenticated(boolean authenticated)
-	{
-		this.authenticated = authenticated;
-	}
+    public void setAuthenticated(boolean authenticated)
+    {
+        this.authenticated = authenticated;
+    }
 
-	public boolean isAuthenticated()
-	{
-		return authenticated;
-	}
+    public boolean isAuthenticated()
+    {
+        return authenticated;
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/SendMail.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/SendMail.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/SendMail.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/lib/SendMail.java Thu Jul  3 14:34:56 2008
@@ -26,30 +26,30 @@
 
 public final class SendMail
 {
-	private SendMail()
-	{
-	}
+    private SendMail()
+    {
+    }
 
-	public static void sendMail(JavaMailSender mailSender, String from, String to, String subject, String text) throws MessagingException
-	{
-		if (mailSender == null)
-		{
-			printMessage();
-			return;
-		}
+    public static void sendMail(JavaMailSender mailSender, String from, String to, String subject, String text) throws MessagingException
+    {
+        if (mailSender == null)
+        {
+            printMessage();
+            return;
+        }
 
-		MimeMessage mimeMessage = mailSender.createMimeMessage();
-		MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);
-		mimeMessageHelper.setSubject(subject);
-		mimeMessageHelper.setFrom(from);
-		mimeMessageHelper.setTo(to);
-		mimeMessageHelper.setText(text, false);
+        MimeMessage mimeMessage = mailSender.createMimeMessage();
+        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);
+        mimeMessageHelper.setSubject(subject);
+        mimeMessageHelper.setFrom(from);
+        mimeMessageHelper.setTo(to);
+        mimeMessageHelper.setText(text, false);
 
-		mailSender.send(mimeMessage);
-	}
+        mailSender.send(mimeMessage);
+    }
 
-	private static void printMessage()
-	{
-		System.err.println("to make the mail stuff work please activate the 'mailSender' bean in the examples applicationContext.xml and configure it for your smtp server");
-	}
+    private static void printMessage()
+    {
+        System.err.println("to make the mail stuff work please activate the 'mailSender' bean in the examples applicationContext.xml and configure it for your smtp server");
+    }
 }

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Item.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Item.java?rev=673822&r1=673821&r2=673822&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Item.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/ballot/model/Item.java Thu Jul  3 14:34:56 2008
@@ -36,69 +36,69 @@
 @Entity
 public class Item
 {
-	@Id
-	@GeneratedValue(strategy= GenerationType.SEQUENCE)
-	private Long id;
-
-	@ManyToOne
-	private Topic topic;
-
-	@Column(nullable = false)
-	private String content;
-
-	@Version
-	private Long version;
-
-	@OneToMany(cascade = CascadeType.REMOVE, mappedBy = "item")
-	private List<Vote> votes;
-
-	public Long getId()
-	{
-		return id;
-	}
-
-	public void setId(Long id)
-	{
-		this.id = id;
-	}
-
-	public Topic getTopic()
-	{
-		return topic;
-	}
-
-	public void setTopic(Topic topic)
-	{
-		this.topic = topic;
-	}
-
-	public String getContent()
-	{
-		return content;
-	}
-
-	public void setContent(String content)
-	{
-		this.content = content;
-	}
-
-	public Long getVersion()
-	{
-		return version;
-	}
-
-	public void setVersion(Long version)
-	{
-		this.version = version;
-	}
-
-	public List<Vote> getVotes()
-	{
-		return votes;
-	}
-
-	public void setVotes(List<Vote> votes)
-	{
-		this.votes = votes;
-	}
+    @Id
+    @GeneratedValue(strategy= GenerationType.SEQUENCE)
+    private Long id;
+
+    @ManyToOne
+    private Topic topic;
+
+    @Column(nullable = false)
+    private String content;
+
+    @Version
+    private Long version;
+
+    @OneToMany(cascade = CascadeType.REMOVE, mappedBy = "item")
+    private List<Vote> votes;
+
+    public Long getId()
+    {
+        return id;
+    }
+
+    public void setId(Long id)
+    {
+        this.id = id;
+    }
+
+    public Topic getTopic()
+    {
+        return topic;
+    }
+
+    public void setTopic(Topic topic)
+    {
+        this.topic = topic;
+    }
+
+    public String getContent()
+    {
+        return content;
+    }
+
+    public void setContent(String content)
+    {
+        this.content = content;
+    }
+
+    public Long getVersion()
+    {
+        return version;
+    }
+
+    public void setVersion(Long version)
+    {
+        this.version = version;
+    }
+
+    public List<Vote> getVotes()
+    {
+        return votes;
+    }
+
+    public void setVotes(List<Vote> votes)
+    {
+        this.votes = votes;
+    }
 }
\ No newline at end of file