001// -------------------------------------------------------------------------------- 002// Copyright 2002-2026 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016 017package com.echothree.control.user.authentication.common; 018 019import com.echothree.control.user.authentication.common.form.*; 020import com.echothree.control.user.authentication.common.result.*; 021import com.echothree.model.data.user.common.pk.UserVisitPK; 022import com.echothree.util.common.command.CommandResult; 023import com.echothree.util.common.command.VoidResult; 024 025public interface AuthenticationService 026 extends AuthenticationForms { 027 028 // ------------------------------------------------------------------------- 029 // Testing 030 // ------------------------------------------------------------------------- 031 032 String ping(); 033 034 // ------------------------------------------------------------------------- 035 // User Visits and Sessions 036 // ------------------------------------------------------------------------- 037 038 CommandResult<VoidResult> getJobUserVisit(GetJobUserVisitForm form); 039 040 UserVisitPK getDataLoaderUserVisit(); 041 042 CommandResult<VoidResult> getUserVisit(GetUserVisitForm form); 043 044 void invalidateUserSession(UserVisitPK userVisitPK); 045 046 void invalidateUserVisit(UserVisitPK userVisitPK); 047 048 CommandResult<VoidResult> invalidateAbandonedUserVisits(UserVisitPK userVisitPK, InvalidateAbandonedUserVisitsForm form); 049 050 CommandResult<VoidResult> removeInactiveUserKeys(UserVisitPK userVisitPK, RemoveInactiveUserKeysForm form); 051 052 CommandResult<VoidResult> removeInvalidatedUserVisits(UserVisitPK userVisitPK); 053 054 // ------------------------------------------------------------------------- 055 // Logins 056 // ------------------------------------------------------------------------- 057 058 CommandResult<GetCustomerLoginDefaultsResult> getCustomerLoginDefaults(UserVisitPK userVisitPK, GetCustomerLoginDefaultsForm form); 059 060 CommandResult<VoidResult> customerLogin(UserVisitPK userVisitPK, CustomerLoginForm form); 061 062 CommandResult<GetEmployeeLoginDefaultsResult> getEmployeeLoginDefaults(UserVisitPK userVisitPK, GetEmployeeLoginDefaultsForm form); 063 064 CommandResult<VoidResult> employeeLogin(UserVisitPK userVisitPK, EmployeeLoginForm form); 065 066 CommandResult<GetVendorLoginDefaultsResult> getVendorLoginDefaults(UserVisitPK userVisitPK, GetVendorLoginDefaultsForm form); 067 068 CommandResult<VoidResult> vendorLogin(UserVisitPK userVisitPK, VendorLoginForm form); 069 070 CommandResult<VoidResult> setPassword(UserVisitPK userVisitPK, SetPasswordForm form); 071 072 CommandResult<VoidResult> recoverPassword(UserVisitPK userVisitPK, RecoverPasswordForm form); 073 074 CommandResult<VoidResult> idle(UserVisitPK userVisitPK); 075 076 CommandResult<VoidResult> logout(UserVisitPK userVisitPK); 077 078}