001/*
002 * JGrapes Event driven Framework
003 * Copyright (C) 2022 Michael N. Lipp
004 * 
005 * This program is free software: you can redistribute it and/or modify
006 * it under the terms of the GNU Affero General Public License as
007 * published by the Free Software Foundation, either version 3 of the
008 * License, or (at your option) any later version.
009 *
010 * This program is distributed in the hope that it will be useful,
011 * but WITHOUT ANY WARRANTY; without even the implied warranty of
012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
013 * GNU Affero General Public License for more details.
014 *
015 * You should have received a copy of the GNU Affero General Public License
016 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
017 */
018
019package org.jgrapes.mail.events;
020
021import jakarta.mail.Store;
022import org.jgrapes.io.events.Opened;
023
024/**
025 * Fired when the requested connection has been established.
026 */
027public class MailMonitorOpened extends Opened<OpenMailMonitor> {
028
029    private final Store store;
030
031    /**
032     * Instantiates a new mail monitor opened.
033     *
034     * @param openEvent the open event
035     */
036    public MailMonitorOpened(OpenMailMonitor openEvent, Store store) {
037        this.store = store;
038        setResult(openEvent);
039    }
040
041    /**
042     * Returns the event that caused this connection to be established.
043     * 
044     * @return the event
045     */
046    public OpenMailMonitor openEvent() {
047        return currentResults().get(0);
048    }
049
050    /**
051     * Returns the store that has been opened.
052     *
053     * @return the store
054     */
055    public Store getStore() {
056        return store;
057    }
058}