001    /****************************************************************
002     * Licensed to the Apache Software Foundation (ASF) under one   *
003     * or more contributor license agreements.  See the NOTICE file *
004     * distributed with this work for additional information        *
005     * regarding copyright ownership.  The ASF licenses this file   *
006     * to you under the Apache License, Version 2.0 (the            *
007     * "License"); you may not use this file except in compliance   *
008     * with the License.  You may obtain a copy of the License at   *
009     *                                                              *
010     *   http://www.apache.org/licenses/LICENSE-2.0                 *
011     *                                                              *
012     * Unless required by applicable law or agreed to in writing,   *
013     * software distributed under the License is distributed on an  *
014     * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
015     * KIND, either express or implied.  See the License for the    *
016     * specific language governing permissions and limitations      *
017     * under the License.                                           *
018     ****************************************************************/
019    
020    package org.apache.hupa.shared.events;
021    
022    import java.util.ArrayList;
023    
024    import org.apache.hupa.shared.data.IMAPFolder;
025    import org.apache.hupa.shared.data.Message;
026    import org.apache.hupa.shared.data.User;
027    
028    import com.google.gwt.event.shared.GwtEvent;
029    
030    public class DeleteMessageEvent extends GwtEvent<DeleteMessageEventHandler>{
031    
032        public final static Type<DeleteMessageEventHandler> TYPE = new Type<DeleteMessageEventHandler>();
033        private User user;
034        private IMAPFolder folder;
035        private ArrayList<Message> messageList;
036        @Override
037        protected void dispatch(DeleteMessageEventHandler handler) {
038            handler.onDeleteMessageEvent(this);
039        }
040    
041        @Override
042        public com.google.gwt.event.shared.GwtEvent.Type<DeleteMessageEventHandler> getAssociatedType() {
043            return TYPE;
044        }
045        
046        public DeleteMessageEvent(User user, IMAPFolder folder, ArrayList<Message> messageList) {
047            this.user = user;
048            this.folder = folder;
049            this.messageList = messageList;
050        }
051        public DeleteMessageEvent(User user, IMAPFolder folder, Message message) {
052            ArrayList<Message> mList = new ArrayList<Message>();
053            mList.add(message);
054            
055            this.user = user;
056            this.folder = folder;
057            this.messageList = mList;
058        }
059        public User getUser() {
060            return user;
061        }
062        
063        public IMAPFolder getFolder() {
064            return folder;
065        }
066        
067        public ArrayList<Message> getMessages() {
068            return messageList;
069        }
070    
071    }