// Path: src/main/java/com/cqrs/appengine/core/messaging/EventHandler.java
// @SuppressWarnings("serial")
// public abstract class EventHandler<T extends Event> implements DeferredTask {
// 
//     /**
//      * The event
//      */
//     protected T event;
// 
//     /**
//      * Default constructor
//      * 
//      * @param event
//      */
//     public EventHandler(T event){
//         this.event = event;
//     }
// }
// 
// Path: src/main/java/com/cqrs/appengine/sample/MessageLog.java
// public class MessageLog {
// 
//     private static final String LOG_NAME = "Simple CQRS Service Log";
// 
//     private static final Logger log = Logger.getLogger(LOG_NAME);
// 
//     static {
//         log.setLevel(java.util.logging.Level.FINEST);
//     }
// 
//     /**
//      * Log an informational message
//      * 
//      * @param message
//      */
//     public static void log(String message){
//         log.log(Level.INFO, message);
//     }
// 
//     /**
//      * Log an exception
//      * 
//      * @param e
//      */
//     public static void log(Exception e){
// 
//         if(e == null)
//             return;
// 
//         log.log(Level.SEVERE, e.getClass().getName(), e);
//     }
// }
// 
// Path: src/main/java/com/cqrs/appengine/sample/domain/AttendeeDisabled.java
// public class AttendeeDisabled implements Event, Serializable {
// 
//     private static final long serialVersionUID = 1L;
// 
//     private UUID attendeeId;
//     private DisableReason reason;
// 
//     /**
//      * Default constructor for serialization
//      */
//     public AttendeeDisabled(){}
// 
//     /**
//      * Constructor
//      * 
//      * @param attendeeId
//      * @param reason
//      */
//     public AttendeeDisabled(UUID attendeeId, DisableReason reason){
//         this.attendeeId = attendeeId;
//         this.reason = reason;
//     }
// 
//     /**
//      * Get the attendee Id
//      * @return
//      */
//     public UUID getAttendeeId(){
//         return attendeeId;
//     }
// 
//     /**
//      * Get the reason
//      * 
//      * @return
//      */
//     public DisableReason getReason(){
//         return reason;
//     }
// }


import com.cqrs.appengine.core.messaging.EventHandler;
import com.cqrs.appengine.sample.MessageLog;
import com.cqrs.appengine.sample.domain.AttendeeDisabled;
package com.cqrs.appengine.sample.handlers.events;


public class AttendeeDisabledEventHandler extends EventHandler<AttendeeDisabled> {

    private static final long serialVersionUID = 1L;

    public AttendeeDisabledEventHandler(AttendeeDisabled event) {
        super(event);
    }

    @Override
    public void run() {

// Path: src/main/java/com/cqrs/appengine/core/messaging/EventHandler.java
// @SuppressWarnings("serial")
// public abstract class EventHandler<T extends Event> implements DeferredTask {
// 
//     /**
//      * The event
//      */
//     protected T event;
// 
//     /**
//      * Default constructor
//      * 
//      * @param event
//      */
//     public EventHandler(T event){
//         this.event = event;
//     }
// }
// 
// Path: src/main/java/com/cqrs/appengine/sample/MessageLog.java
// public class MessageLog {
// 
//     private static final String LOG_NAME = "Simple CQRS Service Log";
// 
//     private static final Logger log = Logger.getLogger(LOG_NAME);
// 
//     static {
//         log.setLevel(java.util.logging.Level.FINEST);
//     }
// 
//     /**
//      * Log an informational message
//      * 
//      * @param message
//      */
//     public static void log(String message){
//         log.log(Level.INFO, message);
//     }
// 
//     /**
//      * Log an exception
//      * 
//      * @param e
//      */
//     public static void log(Exception e){
// 
//         if(e == null)
//             return;
// 
//         log.log(Level.SEVERE, e.getClass().getName(), e);
//     }
// }
// 
// Path: src/main/java/com/cqrs/appengine/sample/domain/AttendeeDisabled.java
// public class AttendeeDisabled implements Event, Serializable {
// 
//     private static final long serialVersionUID = 1L;
// 
//     private UUID attendeeId;
//     private DisableReason reason;
// 
//     /**
//      * Default constructor for serialization
//      */
//     public AttendeeDisabled(){}
// 
//     /**
//      * Constructor
//      * 
//      * @param attendeeId
//      * @param reason
//      */
//     public AttendeeDisabled(UUID attendeeId, DisableReason reason){
//         this.attendeeId = attendeeId;
//         this.reason = reason;
//     }
// 
//     /**
//      * Get the attendee Id
//      * @return
//      */
//     public UUID getAttendeeId(){
//         return attendeeId;
//     }
// 
//     /**
//      * Get the reason
//      * 
//      * @return
//      */
//     public DisableReason getReason(){
//         return reason;
//     }
// }


// Path: src/main/java/com/cqrs/appengine/sample/handlers/events/AttendeeDisabledEventHandler.java
import com.cqrs.appengine.core.messaging.EventHandler;
import com.cqrs.appengine.sample.MessageLog;
import com.cqrs.appengine.sample.domain.AttendeeDisabled;

package com.cqrs.appengine.sample.handlers.events;


public class AttendeeDisabledEventHandler extends EventHandler<AttendeeDisabled> {

    private static final long serialVersionUID = 1L;

    public AttendeeDisabledEventHandler(AttendeeDisabled event) {
        super(event);
    }

    @Override
    public void run() {

        MessageLog.log(String.format("Attendee %s Disabled.", event.getAttendeeId().toString()));