--- /dev/null
+/*
+ * Copyright (C) 2016, 2017 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jusercore.model.resendlink;
+
+import java.io.Serializable;
+import java.util.Locale;
+import javax.ejb.Remote;
+import org.mxchange.jusercore.exceptions.UserNotFoundException;
+import org.mxchange.jusercore.exceptions.UserStatusConfirmedException;
+import org.mxchange.jusercore.exceptions.UserStatusLockedException;
+import org.mxchange.jusercore.model.user.User;
+
+/**
+ * A remote interface for resending confirmation link.
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Remote
+public interface ResendLinkSessionBeanRemote extends Serializable {
+
+ /**
+ * Send confirmation link out to given user and returns a proper redirection
+ * target. The user's account status should be UNCONFIRMED and should
+ * contain a confirmation key. After confirmation the account's status
+ * should be changed to CONFIRMED and the key removed (nulled).
+ * <p>
+ * @param user User instance
+ * @param locale Locale instance
+ * @param baseUrl Base URL
+ *
+ * @throws UserNotFoundException If the user's account was not found
+ * @throws UserStatusLockedException If the user's account is locked
+ * @throws UserStatusConfirmedException If the user's account is already
+ * confirmed
+ */
+ void resendConfirmationLink (final User user, final Locale locale, final String baseUrl) throws UserNotFoundException, UserStatusLockedException, UserStatusConfirmedException;
+
+}