[seam-commits] Seam SVN: r13121 - in examples/trunk/booking-simplified: src/main/java/org/jboss/seam/examples/booking/account and 6 other directories.
seam-commits at lists.jboss.org
seam-commits at lists.jboss.org
Thu Jun 10 17:06:43 EDT 2010
Author: lincolnthree
Date: 2010-06-10 17:06:42 -0400 (Thu, 10 Jun 2010)
New Revision: 13121
Added:
examples/trunk/booking-simplified/src/main/webapp/META-INF/
examples/trunk/booking-simplified/src/main/webapp/META-INF/MANIFEST.MF
examples/trunk/booking-simplified/src/main/webapp/WEB-INF/lib/
Modified:
examples/trunk/booking-simplified/
examples/trunk/booking-simplified/pom.xml
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/AccountProducerBean.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/PasswordManagerBean.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/RegistrarBean.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgentBean.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingHistoryBean.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/controls/RegistrationFormControls.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticationEventListener.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/Authenticator.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticatorBean.java
Log:
Gutted security -- still not running.
Property changes on: examples/trunk/booking-simplified
___________________________________________________________________
Name: svn:ignore
- target
+ target
.settings
.classpath
.project
Modified: examples/trunk/booking-simplified/pom.xml
===================================================================
--- examples/trunk/booking-simplified/pom.xml 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/pom.xml 2010-06-10 21:06:42 UTC (rev 13121)
@@ -46,43 +46,27 @@
<dependency>
<groupId>org.jboss.seam.faces</groupId>
- <artifactId>seam-faces-api</artifactId>
- <version>3.0.0-SNAPSHOT</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.seam.faces</groupId>
<artifactId>seam-faces</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>3.0.0.Alpha3</version>
<scope>runtime</scope>
</dependency>
<dependency>
- <groupId>org.jboss.seam.security</groupId>
- <artifactId>seam-security-api</artifactId>
- <version>3.0.0-SNAPSHOT</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.seam.security</groupId>
- <artifactId>seam-security-impl</artifactId>
- <version>3.0.0-SNAPSHOT</version>
- <scope>runtime</scope>
- </dependency>
-
- <dependency>
<groupId>org.jboss.seam.xml</groupId>
<artifactId>seam-xml-config</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>3.0.0.Alpha2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.10</version>
- <scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.5.10</version>
+ </dependency>
<dependency>
<groupId>org.testng</groupId>
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/AccountProducerBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/AccountProducerBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/AccountProducerBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -2,15 +2,13 @@
import javax.ejb.Stateless;
import javax.enterprise.context.SessionScoped;
+import javax.enterprise.inject.Produces;
import javax.inject.Inject;
import javax.inject.Named;
-import javax.enterprise.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.security.Credentials;
-import org.jboss.seam.security.Identity;
import org.slf4j.Logger;
/**
@@ -19,33 +17,19 @@
@Stateless
public class AccountProducerBean implements AccountProducer
{
- @Inject private Logger log;
+ @Inject
+ private Logger log;
- @PersistenceContext private EntityManager em;
+ @PersistenceContext
+ private EntityManager em;
- @Inject private Identity identity;
-
- @Inject private Credentials credentials;
-
- public
- @Produces
+ public @Produces
@Registered
- @Named("user")
+ @Named("currentUser")
@SessionScoped
User getCurrentAccount()
{
- if (identity.isLoggedIn())
- {
- log.info("Producing user from username {0}", credentials.getUsername());
- User candidate = em.find(User.class, credentials.getUsername());
- if (candidate != null)
- {
- return new User(candidate.getName(), candidate.getUsername());
- }
- }
-
log.info("Producing dummy User");
- // TODO can't return null because this is a scoped producer, but then we are not honoring the semantics of our binding type
- return new User();
+ return new User("Current User", "CurrentUser");
}
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/PasswordManagerBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/PasswordManagerBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/PasswordManagerBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -10,7 +10,8 @@
import org.jboss.seam.examples.booking.controls.RegistrationFormControls;
import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.international.StatusMessages;
+import org.jboss.seam.international.status.Messages;
+import org.jboss.seam.international.status.builder.BundleKey;
/**
* @author Dan Allen
@@ -20,13 +21,18 @@
@RequestScoped
public class PasswordManagerBean implements PasswordManager
{
- @PersistenceContext private EntityManager em;
+ @PersistenceContext
+ private EntityManager em;
- @Inject private StatusMessages statusMessages;
+ @Inject
+ private Messages messages;
- @Inject private RegistrationFormControls formControls;
+ @Inject
+ private RegistrationFormControls formControls;
- @Inject @Registered private User user;
+ @Inject
+ @Registered
+ private User user;
private String confirmPassword;
@@ -39,16 +45,15 @@
// FIXME: dirty hack, can't merge a managed bean
em.merge(new User(user.getName(), user.getUsername(), user.getPassword()));
user.setPassword(null);
- statusMessages.addFromResourceBundleOrDefault("account.passwordChanged", "Password successfully updated.");
+ messages.info(new BundleKey("messages.properties", "account.passwordChanged")).textDefault("Password successfully updated.");
changed = true;
}
else
{
// FIME reverting isn't going to work here
- //revertUser();
+ // revertUser();
confirmPassword = null;
- statusMessages.addToControlFromResourceBundleOrDefault(formControls.getConfirmPasswordControlId(),
- "account.passwordsDoNotMatch", "Passwords do not match. Please re-type the new password.");
+ messages.error(new BundleKey("messages.properties", "account.passwordsDoNotMatch")).textDefault("Passwords do not match. Please re-type the new password.");
}
}
@@ -57,7 +62,7 @@
return changed;
}
- public void setConfirmPassword(String password)
+ public void setConfirmPassword(final String password)
{
this.confirmPassword = password;
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/RegistrarBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/RegistrarBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/RegistrarBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -3,39 +3,38 @@
import javax.annotation.PreDestroy;
import javax.ejb.Stateful;
import javax.enterprise.context.RequestScoped;
+import javax.enterprise.inject.Produces;
import javax.inject.Inject;
import javax.inject.Named;
-import javax.enterprise.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.jboss.seam.examples.booking.controls.RegistrationFormControls;
import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.international.StatusMessage;
-import org.jboss.seam.international.StatusMessages;
-import org.jboss.seam.security.Credentials;
-import org.jboss.seam.security.Identity;
+import org.jboss.seam.international.status.Messages;
+import org.jboss.seam.international.status.builder.BundleKey;
/**
* @author Dan Allen
*/
- at Named("registrar")
@Stateful
+ at Named("registrar")
@RequestScoped
public class RegistrarBean implements Registrar
{
- @PersistenceContext private EntityManager em;
+ @PersistenceContext
+ private EntityManager em;
- @Inject private StatusMessages statusMessages;
+ @Inject
+ private Messages Messages;
- @Inject private RegistrationFormControls formControls;
+ @Inject
+ private RegistrationFormControls formControls;
- @Inject private Credentials credentials;
+ @Inject
+ @Registered
+ User newUser;
- @Inject private Identity identity;
-
- private User newUser;
-
private String confirmPassword;
private boolean registered;
@@ -46,12 +45,8 @@
{
if (verifyPasswordsMatch() && verifyUsernameIsAvailable())
{
- em.persist(newUser);
- credentials.setUsername(newUser.getUsername());
- credentials.setPassword(newUser.getPassword());
- identity.quietLogin();
registered = true;
- statusMessages.addFromResourceBundleOrDefault("registration.registered", "You have been successfully registered as the user {0}!", newUser.getUsername());
+ Messages.info(new BundleKey("messages.properties", "registration.registered")).textDefault("You have been successfully registered as the user {0}!").textParams(newUser.getUsername());
}
else
{
@@ -64,22 +59,21 @@
return registrationInvalid;
}
- // TODO it would be nice to move the conditional to the UI but <f:event> doesn't support if=""
- public void notifyIfRegistrationIsInvalid(boolean validationFailed)
+ // TODO it would be nice to move the conditional to the UI but <f:event>
+ // doesn't support if=""
+ public void notifyIfRegistrationIsInvalid(final boolean validationFailed)
{
if (validationFailed || registrationInvalid)
{
- statusMessages.addFromResourceBundleOrDefault(StatusMessage.Severity.WARN, "registration.invalid", "Invalid registration. Please correct the errors and try again.");
+ Messages.warn(new BundleKey("messages.properties", "registration.invalid")).textDefault("Invalid registration. Please correct the errors and try again.");
}
}
- public
- @Produces
+ public @Produces
@Named
@RequestScoped
User getNewUser()
{
- newUser = new User();
return newUser;
}
@@ -93,7 +87,7 @@
return confirmPassword;
}
- public void setConfirmPassword(String password)
+ public void setConfirmPassword(final String password)
{
this.confirmPassword = password;
}
@@ -105,8 +99,7 @@
{
if (!newUser.getPassword().equals(confirmPassword))
{
- statusMessages.addToControlFromResourceBundleOrDefault(formControls.getConfirmPasswordControlId(),
- "account.passwordsDoNotMatch", "Passwords do not match. Please re-type your password.");
+ Messages.warn(new BundleKey("messages.properties", "account.passwordsDoNotMatch")).textDefault("Passwords do not match. Please re-type your password.").targets(formControls.getConfirmPasswordControlId());
confirmPassword = null;
return false;
}
@@ -119,8 +112,7 @@
User existing = em.find(User.class, newUser.getUsername());
if (existing != null)
{
- statusMessages.addToControlFromResourceBundleOrDefault(formControls.getUsernameControlId(),
- "account.usernameTaken", "The username '{0}' is already taken. Please choose another username.", newUser.getUsername());
+ Messages.warn(new BundleKey("messages.properties", "account.usernameTaken")).textDefault("The username '{0}' is already taken. Please choose another username.").targets(formControls.getUsernameControlId()).textParams(newUser.getUsername());
return false;
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgentBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgentBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgentBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -32,11 +32,11 @@
import javax.enterprise.context.Conversation;
import javax.enterprise.context.ConversationScoped;
import javax.enterprise.context.RequestScoped;
-import javax.enterprise.inject.AnnotationLiteral;
+import javax.enterprise.inject.Produces;
+import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.util.AnnotationLiteral;
import javax.inject.Inject;
import javax.inject.Named;
-import javax.enterprise.inject.Produces;
-import javax.enterprise.inject.spi.BeanManager;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@@ -45,7 +45,8 @@
import org.jboss.seam.examples.booking.model.Booking;
import org.jboss.seam.examples.booking.model.Hotel;
import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.international.StatusMessages;
+import org.jboss.seam.international.status.Messages;
+import org.jboss.seam.international.status.builder.BundleKey;
import org.slf4j.Logger;
@Named("bookingAgent")
@@ -53,20 +54,28 @@
@ConversationScoped
public class BookingAgentBean implements BookingAgent
{
- @Inject private Logger log;
+ @Inject
+ private Logger log;
- @PersistenceContext(type = EXTENDED) private EntityManager em;
+ @PersistenceContext(type = EXTENDED)
+ private EntityManager em;
- @Inject private Conversation conversation;
+ @Inject
+ private Conversation conversation;
- @Inject private StatusMessages statusMessages;
+ @Inject
+ private Messages Messages;
- @Inject private BookingFormControls formControls;
+ @Inject
+ private BookingFormControls formControls;
- @Inject @Registered private User user;
+ @Inject
+ @Registered
+ private User user;
- //@Inject @Fires @Confirmed Event<BookingEvent> bookingConfirmedEvent;
- @Inject private BeanManager manager;
+ // @Inject @Fires @Confirmed Event<BookingEvent> bookingConfirmedEvent;
+ @Inject
+ private BeanManager manager;
private Hotel hotelSelection;
@@ -74,9 +83,10 @@
private boolean bookingValid;
- public void selectHotel(Hotel hotel)
+ public void selectHotel(final Hotel hotel)
{
- // NOTE get a fresh reference that's managed by the conversational persistence context
+ // NOTE get a fresh reference that's managed by the conversational
+ // persistence context
hotelSelection = em.find(Hotel.class, hotel.getId());
log.info("Selected the {0} in {1}", hotelSelection.getName(), hotelSelection.getCity());
conversation.begin();
@@ -90,8 +100,8 @@
booking.setCheckinDate(calendar.getTime());
calendar.add(Calendar.DAY_OF_MONTH, 1);
booking.setCheckoutDate(calendar.getTime());
- hotelSelection = null;
- statusMessages.addFromResourceBundleOrDefault("booking.initiated", "You've initiated a booking at {0}.", booking.getHotel().getName());
+ hotelSelection = null;
+ Messages.info(new BundleKey("messages.properties", "booking.initiated")).textDefault("You've initiated a booking at {0}.").textParams(booking.getHotel().getName());
}
public void validateBooking()
@@ -100,12 +110,12 @@
calendar.add(Calendar.DAY_OF_MONTH, -1);
if (booking.getCheckinDate().before(calendar.getTime()))
{
- statusMessages.addToControlFromResourceBundleOrDefault(formControls.getCheckinDateControlId(), "booking.checkInNotFutureDate", "Check in date must be a future date");
+ Messages.info(new BundleKey("messages.properties", "booking.checkInNotFutureDate")).textDefault("Check in date must be a future date").targets(formControls.getCheckinDateControlId());
bookingValid = false;
}
else if (!booking.getCheckinDate().before(booking.getCheckoutDate()))
{
- statusMessages.addToControlFromResourceBundleOrDefault(formControls.getCheckoutDateControlId(), "booking.checkOutBeforeCheckIn", "Check out date must be after check in date");
+ Messages.info(new BundleKey("messages.properties", "booking.checkOutBeforeCheckIn")).textDefault("Check out date must be after check in date").targets(formControls.getCheckoutDateControlId());
bookingValid = false;
}
else
@@ -118,10 +128,12 @@
{
em.persist(booking);
// FIXME can't inject event object into bean with passivating scope
- //bookingConfirmedEvent.fire(new BookingEvent(booking));
- manager.fireEvent(new BookingEvent(booking), new AnnotationLiteral<Confirmed>() {});
+ // bookingConfirmedEvent.fire(new BookingEvent(booking));
+ manager.fireEvent(new BookingEvent(booking), new AnnotationLiteral<Confirmed>()
+ {
+ });
log.info("New booking at the {0} confirmed for {1}", booking.getHotel().getName(), booking.getUser().getName());
- statusMessages.addFromResourceBundleOrDefault("booking.confirmed", "Booking confirmed.");
+ Messages.info(new BundleKey("messages.properties", "booking.confirmed")).textDefault("Booking confirmed.");
conversation.end();
}
@@ -132,8 +144,7 @@
conversation.end();
}
- public
- @Produces
+ public @Produces
@Named
@ConversationScoped
Booking getBooking()
@@ -141,8 +152,7 @@
return booking;
}
- public
- @Produces
+ public @Produces
@Named("hotel")
@RequestScoped
Hotel getHotelSelection()
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingHistoryBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingHistoryBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingHistoryBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -6,17 +6,18 @@
import javax.annotation.PreDestroy;
import javax.ejb.Stateful;
import javax.enterprise.context.SessionScoped;
+import javax.enterprise.event.Observes;
+import javax.enterprise.inject.Produces;
import javax.inject.Inject;
import javax.inject.Named;
-import javax.enterprise.inject.Produces;
-import javax.enterprise.event.Observes;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.jboss.seam.examples.booking.account.Registered;
import org.jboss.seam.examples.booking.model.Booking;
import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.international.StatusMessages;
+import org.jboss.seam.international.status.Messages;
+import org.jboss.seam.international.status.builder.BundleKey;
import org.slf4j.Logger;
/**
@@ -25,50 +26,53 @@
@Named("bookingHistory")
@Stateful
@SessionScoped
-public class BookingHistoryBean implements BookingHistory {
+public class BookingHistoryBean implements BookingHistory
+{
- @Inject private Logger log;
+ @Inject
+ private Logger log;
- @PersistenceContext private EntityManager em;
+ @PersistenceContext
+ private EntityManager em;
- @Inject private StatusMessages statusMessages;
+ @Inject
+ private Messages Messages;
- @Inject @Registered private User user;
+ @Inject
+ @Registered
+ private User user;
- private List<Booking> bookingsForUser = new ArrayList<Booking>();
+ private final List<Booking> bookingsForUser = new ArrayList<Booking>();
- public
- @Produces
+ public @Produces
@Registered
@Named("bookings")
@SessionScoped
List<Booking> getBookingsForCurrentUser()
{
bookingsForUser.clear();
- bookingsForUser.addAll(em.createQuery("select b from Booking b join fetch b.hotel where b.user.username = :username order by b.checkinDate")
- .setParameter("username", user.getUsername())
- .getResultList());
+ bookingsForUser.addAll(em.createQuery("select b from Booking b join fetch b.hotel where b.user.username = :username order by b.checkinDate").setParameter("username", user.getUsername()).getResultList());
return bookingsForUser;
}
// TODO should probably observe @AfterTransactionSuccess (but it is broken)
- public void afterBookingConfirmed(@Observes @Confirmed BookingEvent bookingEvent)
+ public void afterBookingConfirmed(@Observes @Confirmed final BookingEvent bookingEvent)
{
getBookingsForCurrentUser();
}
- public void cancelBooking(Booking selectedBooking)
+ public void cancelBooking(final Booking selectedBooking)
{
log.info("Canceling booking {0} for {1}", selectedBooking.getId(), user.getName());
Booking booking = em.find(Booking.class, selectedBooking.getId());
if (booking != null)
{
em.remove(booking);
- statusMessages.addFromResourceBundleOrDefault("booking.canceled", "The booking at the {0} on {1,date} has been canceled.", selectedBooking.getHotel().getName(), selectedBooking.getCheckinDate());
+ Messages.info(new BundleKey("messages.properties", "booking.canceled")).textDefault("The booking at the {0} on {1,date} has been canceled.").textParams(selectedBooking.getHotel().getName(), selectedBooking.getCheckinDate());
}
else
{
- statusMessages.addFromResourceBundleOrDefault("booking.doesNotExist", "Our records indicate that the booking you selected has already been canceled.");
+ Messages.info(new BundleKey("messages.properties", "booking.doesNotExist")).textDefault("Our records indicate that the booking you selected has already been canceled.");
}
bookingsForUser.remove(selectedBooking);
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/controls/RegistrationFormControls.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/controls/RegistrationFormControls.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/controls/RegistrationFormControls.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -3,19 +3,23 @@
import java.io.Serializable;
import javax.enterprise.context.RequestScoped;
+import javax.enterprise.inject.Default;
+import javax.faces.component.UIComponent;
import javax.inject.Named;
-import javax.faces.component.UIComponent;
/**
- * A UI binding bean that can provide access to the local id and client id
- * of selected input components in the registration form.
- *
+ * A UI binding bean that can provide access to the local id and client id of
+ * selected input components in the registration form.
+ *
* @author Dan Allen
*/
@Named
@RequestScoped
+ at Default
public class RegistrationFormControls implements Serializable
{
+ private static final long serialVersionUID = -915183084620142065L;
+
private UIComponent username;
private UIComponent confirmPassword;
@@ -25,7 +29,7 @@
return confirmPassword;
}
- public void setConfirmPassword(UIComponent confirmPassword)
+ public void setConfirmPassword(final UIComponent confirmPassword)
{
this.confirmPassword = confirmPassword;
}
@@ -40,7 +44,7 @@
return username;
}
- public void setUsername(UIComponent username)
+ public void setUsername(final UIComponent username)
{
this.username = username;
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticationEventListener.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticationEventListener.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticationEventListener.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -1,45 +1,43 @@
package org.jboss.seam.examples.booking.security;
import javax.enterprise.context.RequestScoped;
-import javax.enterprise.context.SessionScoped;
-import javax.enterprise.context.spi.Context;
-import javax.enterprise.event.Observes;
-import javax.enterprise.inject.AnnotationLiteral;
-import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
+import javax.inject.Inject;
-import org.jboss.seam.examples.booking.account.Registered;
-import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.security.events.LoggedInEvent;
-import org.jboss.seam.security.events.LoggedOutEvent;
-import org.jboss.seam.web.HttpSessionManager;
import org.slf4j.Logger;
/**
- * An observer that monitors authentication events and performs
- * initialization and cleanup.
+ * An observer that monitors authentication events and performs initialization
+ * and cleanup.
*
* @author Dan Allen
*/
@RequestScoped
public class AuthenticationEventListener
{
- @Inject private Logger log;
-
+ @Inject
+ private Logger log;
+
/**
- * Clear the dummy register user when a login event occurs. Temporary workaround
- * for not being able to clear this out some other way.
+ * Clear the dummy register user when a login event occurs. Temporary
+ * workaround for not being able to clear this out some other way.
*/
- public void onLogin(@Observes LoggedInEvent loggedInEvent, BeanManager manager)
- {
- log.info(loggedInEvent.getPrincipal().getName() + " has logged in; clearing instance of @Registered User");
- Bean<User> registeredUserBean = (Bean<User>) manager.getBeans(User.class, new AnnotationLiteral<Registered>() {}).iterator().next();
- Context sessionContext = manager.getContext(SessionScoped.class);
-
- // TODO - the BeanStore.remove() method is no longer available - find a workaround
- //((AbstractThreadLocalMapContext) sessionContext).getBeanStore().remove(registeredUserBean);
- }
-
+ // public void onLogin(@Observes final LoggedInEvent loggedInEvent, final
+ // BeanManager manager)
+ // {
+ // log.info(loggedInEvent.getPrincipal().getName() +
+ // " has logged in; clearing instance of @Registered User");
+ // Bean<User> registeredUserBean = (Bean<User>) manager.getBeans(User.class,
+ // new AnnotationLiteral<Registered>()
+ // {
+ // }).iterator().next();
+ // Context sessionContext = manager.getContext(SessionScoped.class);
+ //
+ // // TODO - the BeanStore.remove() method is no longer available - find a
+ // // workaround
+ // // ((AbstractThreadLocalMapContext)
+ // // sessionContext).getBeanStore().remove(registeredUserBean);
+ // }
+
/**
* Observe the logout event and prepare the session to be terminated. We
* cannot terminate the session immediately or else it will cause any
@@ -47,10 +45,11 @@
* this task to the Seam HttpSessionManager, which can terminate (i.e.,
* invalidate) the session when the current request ends.
*/
- public void onLogout(@Observes LoggedOutEvent loggedOutEvent, HttpSessionManager sessionManager)
- {
- log.info(loggedOutEvent.getPrincipal().getName() + " has logged out");
- sessionManager.invalidateAtEndOfRequest();
- }
-
+ // public void onLogout(@Observes final LoggedOutEvent loggedOutEvent, final
+ // HttpSessionManager sessionManager)
+ // {
+ // log.info(loggedOutEvent.getPrincipal().getName() + " has logged out");
+ // sessionManager.invalidateAtEndOfRequest();
+ // }
+
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/Authenticator.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/Authenticator.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/Authenticator.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -10,6 +10,6 @@
* @author Dan Allen
*/
@Local
-public interface Authenticator extends org.jboss.seam.security.Authenticator
+public interface Authenticator // extends org.jboss.seam.security.Authenticator
{
}
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticatorBean.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticatorBean.java 2010-06-10 20:06:46 UTC (rev 13120)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/security/AuthenticatorBean.java 2010-06-10 21:06:42 UTC (rev 13121)
@@ -5,8 +5,6 @@
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
-import org.jboss.seam.examples.booking.model.User;
-import org.jboss.seam.security.Credentials;
import org.slf4j.Logger;
/**
@@ -18,26 +16,31 @@
@Stateless
public class AuthenticatorBean implements Authenticator
{
- @Inject private Logger log;
+ @Inject
+ private Logger log;
- @PersistenceContext private EntityManager em;
+ @PersistenceContext
+ private EntityManager em;
- @Inject private Credentials credentials;
+ // @Inject
+ // private Credentials credentials;
public boolean authenticate()
{
- if (credentials.getUsername() != null && credentials.getUsername().length() > 0)
- {
- log.info("Authenticating {0}...", credentials.getUsername());
- User user = em.find(User.class, credentials.getUsername());
- if (user != null && user.getPassword().equals(credentials.getPassword()))
- {
- credentials.setPassword(null);
- return true;
- }
- }
+ // if ((credentials.getUsername() != null) &&
+ // (credentials.getUsername().length() > 0))
+ // {
+ // log.info("Authenticating {0}...", credentials.getUsername());
+ // User user = em.find(User.class, credentials.getUsername());
+ // if (user != null &&
+ // user.getPassword().equals(credentials.getPassword()))
+ // {
+ // credentials.setPassword(null);
+ return true;
+ // }
+ // }
- return false;
+ // return false;
}
}
Added: examples/trunk/booking-simplified/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/META-INF/MANIFEST.MF (rev 0)
+++ examples/trunk/booking-simplified/src/main/webapp/META-INF/MANIFEST.MF 2010-06-10 21:06:42 UTC (rev 13121)
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
More information about the seam-commits
mailing list