Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java12
-rw-r--r--plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/AccountConstants.java2
-rw-r--r--plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/ds/AccountStorage.java3
-rw-r--r--plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/internal/AccountAdminImpl.java16
-rw-r--r--plugins/org.eclipse.osee.orcs.account.admin.test/src/org/eclipse/osee/orcs/account/admin/integration/OrcsAccountStorageImplTest.java8
-rw-r--r--plugins/org.eclipse.osee.orcs.account.admin/src/org/eclipse/osee/orcs/account/admin/internal/OrcsAccountStorageImpl.java6
6 files changed, 22 insertions, 25 deletions
diff --git a/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java b/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
index 430212d6775..ff5f4bda8b0 100644
--- a/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
+++ b/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
@@ -28,7 +28,6 @@ import static org.mockito.MockitoAnnotations.initMocks;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-import org.eclipse.osee.account.admin.AccessDetails;
import org.eclipse.osee.account.admin.Account;
import org.eclipse.osee.account.admin.AccountAccess;
import org.eclipse.osee.account.admin.AccountField;
@@ -85,7 +84,6 @@ public class AccountAdminImplTest {
@Mock private AuthenticatedUser authenticatedUser;
@Captor private ArgumentCaptor<Map<String, String>> newPrefsCaptor;
@Captor private ArgumentCaptor<String> tokenCaptor;
- @Captor private ArgumentCaptor<AccessDetails> accessDetailsCaptor;
@Captor private ArgumentCaptor<AuthenticationRequest> authenticationRequestCaptor;
// @formatter:on
@@ -635,7 +633,7 @@ public class AccountAdminImplTest {
thrown.expectMessage("Login Error - Unable to find account for username[" + userName + "] using authentication scheme[" + scheme + "] and userId[" + userName + "]");
accountAdmin.login(request);
- verify(storage, times(0)).createAccountAccess(anyString(), any(Account.class), any(AccessDetails.class));
+ verify(storage, times(0)).createAccountAccess(anyString(), any(Account.class), anyString(), anyString());
verify(authenticationAdmin).authenticate(authenticationRequestCaptor.capture());
@@ -657,7 +655,7 @@ public class AccountAdminImplTest {
AccountAccess access = Mockito.mock(AccountAccess.class);
when(storage.getAccountByEmail(EMAIL)).thenReturn(resultSet);
- when(storage.createAccountAccess(anyString(), eq(account), any(AccessDetails.class))).thenReturn(access);
+ when(storage.createAccountAccess(anyString(), eq(account), anyString(), anyString())).thenReturn(access);
when(authenticationAdmin.authenticate(any(AuthenticationRequest.class))).thenReturn(authenticatedUser);
when(authenticatedUser.getName()).thenReturn(EMAIL);
@@ -672,13 +670,9 @@ public class AccountAdminImplTest {
AccountAccess actual = accountAdmin.login(request);
assertEquals(access, actual);
- verify(storage).createAccountAccess(tokenCaptor.capture(), eq(account), accessDetailsCaptor.capture());
+ verify(storage).createAccountAccess(tokenCaptor.capture(), eq(account), eq(remoteAddress), eq(accessDetails));
assertNotNull(tokenCaptor.getValue());
- AccessDetails actualDetails = accessDetailsCaptor.getValue();
- assertEquals(remoteAddress, actualDetails.getRemoteAddress());
- assertEquals(accessDetails, actualDetails.getAccessDetails());
-
verify(authenticationAdmin).authenticate(authenticationRequestCaptor.capture());
AuthenticationRequest authRequest = authenticationRequestCaptor.getValue();
diff --git a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/AccountConstants.java b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/AccountConstants.java
index df0a3ef0dcf..ee068b3d14e 100644
--- a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/AccountConstants.java
+++ b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/AccountConstants.java
@@ -25,6 +25,8 @@ public final class AccountConstants {
return String.format("%s.%s", NAMESPACE, value);
}
+ public static final String NOT_AVAILABLE = "N/A";
+
public static final String DEFAULT_USERNAME_VALIDATION_PATTERN = null;
public static final String DEFAULT_EMAIL_VALIDATION_PATTERN = null;
public static final String DEFAULT_DISPLAY_NAME_VALIDATION_PATTERN = null;
diff --git a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/ds/AccountStorage.java b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/ds/AccountStorage.java
index 5dcb419cb86..2a01fe799b8 100644
--- a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/ds/AccountStorage.java
+++ b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/ds/AccountStorage.java
@@ -11,7 +11,6 @@
package org.eclipse.osee.account.admin.ds;
import java.util.Map;
-import org.eclipse.osee.account.admin.AccessDetails;
import org.eclipse.osee.account.admin.Account;
import org.eclipse.osee.account.admin.AccountAccess;
import org.eclipse.osee.account.admin.AccountPreferences;
@@ -59,7 +58,7 @@ public interface AccountStorage {
ResultSet<AccountAccess> getAccountAccessByAccessToken(String accessToken);
- AccountAccess createAccountAccess(String accessToken, Account account, AccessDetails details);
+ AccountAccess createAccountAccess(String accessToken, Account account, String accessDetails, String remoteAddress);
void deleteAccountAccessByAccessToken(String accessToken);
diff --git a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/internal/AccountAdminImpl.java b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/internal/AccountAdminImpl.java
index 71d138d6096..63aa9f088f7 100644
--- a/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/internal/AccountAdminImpl.java
+++ b/plugins/org.eclipse.osee.account.admin/src/org/eclipse/osee/account/admin/internal/AccountAdminImpl.java
@@ -13,11 +13,13 @@ package org.eclipse.osee.account.admin.internal;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
+import org.eclipse.osee.account.admin.AccessDetails;
import org.eclipse.osee.account.admin.Account;
import org.eclipse.osee.account.admin.AccountAccess;
import org.eclipse.osee.account.admin.AccountAdmin;
import org.eclipse.osee.account.admin.AccountAdminConfiguration;
import org.eclipse.osee.account.admin.AccountAdminConfigurationBuilder;
+import org.eclipse.osee.account.admin.AccountConstants;
import org.eclipse.osee.account.admin.AccountField;
import org.eclipse.osee.account.admin.AccountLoginException;
import org.eclipse.osee.account.admin.AccountLoginRequest;
@@ -33,6 +35,7 @@ import org.eclipse.osee.framework.jdk.core.type.Identifiable;
import org.eclipse.osee.framework.jdk.core.type.ResultSet;
import org.eclipse.osee.framework.jdk.core.util.Compare;
import org.eclipse.osee.framework.jdk.core.util.Conditions;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
import org.eclipse.osee.logger.Log;
/**
@@ -300,19 +303,26 @@ public class AccountAdminImpl implements AccountAdmin {
return modified;
}
+ private String notAvailableWhenNullorEmpty(String value) {
+ return Strings.isValid(value) ? value : AccountConstants.NOT_AVAILABLE;
+ }
+
@Override
public AccountAccess login(AccountLoginRequest request) {
- String username = request.getUserName();
String id = authenticate(request);
ResultSet<Account> result = getAccountByUniqueField(id);
Account account = result.getAtMostOneOrNull();
if (account == null) {
throw new AccountLoginException(
"Login Error - Unable to find account for username[%s] using authentication scheme[%s] and userId[%s]",
- username, request.getScheme(), id);
+ request.getUserName(), request.getScheme(), id);
}
String accessToken = UUID.randomUUID().toString();
- return storage.createAccountAccess(accessToken, account, request.getDetails());
+
+ AccessDetails details = request.getDetails();
+ String remoteAddress = notAvailableWhenNullorEmpty(details.getRemoteAddress());
+ String accessDetails = notAvailableWhenNullorEmpty(details.getAccessDetails());
+ return storage.createAccountAccess(accessToken, account, remoteAddress, accessDetails);
}
@Override
diff --git a/plugins/org.eclipse.osee.orcs.account.admin.test/src/org/eclipse/osee/orcs/account/admin/integration/OrcsAccountStorageImplTest.java b/plugins/org.eclipse.osee.orcs.account.admin.test/src/org/eclipse/osee/orcs/account/admin/integration/OrcsAccountStorageImplTest.java
index d9916db2c8d..d1761caebcb 100644
--- a/plugins/org.eclipse.osee.orcs.account.admin.test/src/org/eclipse/osee/orcs/account/admin/integration/OrcsAccountStorageImplTest.java
+++ b/plugins/org.eclipse.osee.orcs.account.admin.test/src/org/eclipse/osee/orcs/account/admin/integration/OrcsAccountStorageImplTest.java
@@ -18,7 +18,6 @@ import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
import java.util.HashMap;
import java.util.Map;
-import org.eclipse.osee.account.admin.AccessDetails;
import org.eclipse.osee.account.admin.Account;
import org.eclipse.osee.account.admin.AccountAccess;
import org.eclipse.osee.account.admin.AccountAdmin;
@@ -38,7 +37,6 @@ import org.junit.rules.ExpectedException;
import org.junit.rules.TestName;
import org.junit.rules.TestRule;
import org.mockito.Mock;
-import org.mockito.Mockito;
/**
* Test Case for {@link AccountAdmin} using {@link OrcsAccountStorageImpl}
@@ -208,13 +206,9 @@ public class OrcsAccountStorageImplTest {
String address = "myAddress";
String details = "myDetails";
- AccessDetails accessDetails = Mockito.mock(AccessDetails.class);
- when(accessDetails.getAccessDetails()).thenReturn(details);
- when(accessDetails.getRemoteAddress()).thenReturn(address);
-
Account account = storage.getAccountByUuid(newAccount.getGuid()).getExactlyOne();
- AccountAccess actual = storage.createAccountAccess(token, account, accessDetails);
+ AccountAccess actual = storage.createAccountAccess(token, account, address, details);
assertEquals(details, actual.getAccessDetails());
assertEquals(address, actual.getAccessedFrom());
assertEquals(token, actual.getAccessToken());
diff --git a/plugins/org.eclipse.osee.orcs.account.admin/src/org/eclipse/osee/orcs/account/admin/internal/OrcsAccountStorageImpl.java b/plugins/org.eclipse.osee.orcs.account.admin/src/org/eclipse/osee/orcs/account/admin/internal/OrcsAccountStorageImpl.java
index bf19970a857..85932ef5855 100644
--- a/plugins/org.eclipse.osee.orcs.account.admin/src/org/eclipse/osee/orcs/account/admin/internal/OrcsAccountStorageImpl.java
+++ b/plugins/org.eclipse.osee.orcs.account.admin/src/org/eclipse/osee/orcs/account/admin/internal/OrcsAccountStorageImpl.java
@@ -14,7 +14,6 @@ import java.io.StringWriter;
import java.util.Collections;
import java.util.Map;
import java.util.Map.Entry;
-import org.eclipse.osee.account.admin.AccessDetails;
import org.eclipse.osee.account.admin.Account;
import org.eclipse.osee.account.admin.AccountAccess;
import org.eclipse.osee.account.admin.AccountPreferences;
@@ -266,9 +265,8 @@ public class OrcsAccountStorageImpl implements AccountStorage {
}
@Override
- public AccountAccess createAccountAccess(String accessToken, Account account, AccessDetails details) {
- AccountAccess access =
- factory.newAccountAccess(account.getId(), accessToken, details.getRemoteAddress(), details.getAccessDetails());
+ public AccountAccess createAccountAccess(String accessToken, Account account, String remoteAddress, String accessDetails) {
+ AccountAccess access = factory.newAccountAccess(account.getId(), accessToken, remoteAddress, accessDetails);
try {
accessStore.createAccountAccess(Collections.singleton(access)).call();
return access;

Back to the top