aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/backend/openecomp-sdc-item-permissions-manager
diff options
context:
space:
mode:
authorsheetalm <sheetal.mudholkar@amdocs.com>2018-02-14 09:39:22 +0530
committerVitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com>2018-02-18 19:44:22 +0000
commit04c1754116920f5b43b20f449a39cbfa7a681102 (patch)
tree805a48420c86466c82eace500d5edc6531e1f554 /openecomp-be/backend/openecomp-sdc-item-permissions-manager
parent1f79fe6cf0abafc9db0a99f4c9fbd661a5d87b32 (diff)
Onboarding foundation changes for ItemManager
Resolved conflicting changes 1. Split ItemManager to ASDCItemManager and ItemManager 2. ItemManager provides basic capability of item without collaboration 3. AsdcItemManager provides all capabilities of item including collaboration which are required by onboarding 4. ItemManager can be used by other services like activity spec to create a basic item without collaboration features. Change-Id: I6c6dc34a2b1a1745c796099b70e359432e90f85e Issue-ID: SDC-1039 Signed-off-by: sheetalm <sheetal.mudholkar@amdocs.com>
Diffstat (limited to 'openecomp-be/backend/openecomp-sdc-item-permissions-manager')
-rw-r--r--openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerFactoryImpl.java20
-rw-r--r--openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImpl.java51
-rw-r--r--openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/test/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImplTest.java58
3 files changed, 93 insertions, 36 deletions
diff --git a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerFactoryImpl.java b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerFactoryImpl.java
index 2255ad5fc3..6e41465a11 100644
--- a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerFactoryImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerFactoryImpl.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
package org.openecomp.sdc.itempermissions.dao.impl;
import org.openecomp.sdc.itempermissions.ItemPermissionsManager;
@@ -5,7 +21,7 @@ import org.openecomp.sdc.itempermissions.ItemPermissionsManagerFactory;
import org.openecomp.sdc.itempermissions.PermissionsServicesFactory;
import org.openecomp.sdc.notification.factories.NotificationPropagationManagerFactory;
import org.openecomp.sdc.notification.factories.SubscriptionServiceFactory;
-import org.openecomp.sdc.versioning.ItemManagerFactory;
+import org.openecomp.sdc.versioning.AsdcItemManagerFactory;
/**
* Created by ayalaben on 6/18/2017
@@ -14,7 +30,7 @@ public class ItemPermissionsManagerFactoryImpl extends ItemPermissionsManagerFac
private static final ItemPermissionsManager INSTANCE =
new ItemPermissionsManagerImpl(PermissionsServicesFactory.getInstance().createInterface(),
- ItemManagerFactory.getInstance().createInterface(),
+ AsdcItemManagerFactory.getInstance().createInterface(),
NotificationPropagationManagerFactory.getInstance().createInterface(),
SubscriptionServiceFactory.getInstance().createInterface());
diff --git a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImpl.java b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImpl.java
index 838530a1cd..a68c2d89f9 100644
--- a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/main/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImpl.java
@@ -1,5 +1,32 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
package org.openecomp.sdc.itempermissions.dao.impl;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.ITEM_ID_PROP;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.ITEM_NAME_PROP;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_CHANGED;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_GRANTED;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_ITEM;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_USER;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
@@ -14,21 +41,9 @@ import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.notification.dtos.Event;
import org.openecomp.sdc.notification.services.NotificationPropagationManager;
import org.openecomp.sdc.notification.services.SubscriptionService;
-import org.openecomp.sdc.versioning.ItemManager;
+import org.openecomp.sdc.versioning.AsdcItemManager;
import org.openecomp.sdc.versioning.types.Item;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.ITEM_ID_PROP;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.ITEM_NAME_PROP;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_CHANGED;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_GRANTED;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_ITEM;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_USER;
-
/**
* Created by ayalaben on 6/18/2017.
*/
@@ -38,16 +53,16 @@ public class ItemPermissionsManagerImpl implements ItemPermissionsManager {
private static final String CHANGE_PERMISSIONS = "Change_Item_Permissions";
private PermissionsServices permissionsServices;
- private ItemManager itemManager;
+ private AsdcItemManager asdcItemManager;
private NotificationPropagationManager notifier;
private SubscriptionService subscriptionService;
public ItemPermissionsManagerImpl(PermissionsServices permissionsServices,
- ItemManager itemManager,
+ AsdcItemManager asdcItemManager,
NotificationPropagationManager notificationPropagationManager,
SubscriptionService subscriptionService) {
this.permissionsServices = permissionsServices;
- this.itemManager = itemManager;
+ this.asdcItemManager = asdcItemManager;
this.notifier = notificationPropagationManager;
this.subscriptionService = subscriptionService;
}
@@ -74,7 +89,7 @@ public class ItemPermissionsManagerImpl implements ItemPermissionsManager {
if (permission.equals(PermissionTypes.Owner.name()) ){
if (addedUsersIds.size() == 1){
- itemManager.updateOwner(itemId,addedUsersIds.iterator().next());
+ asdcItemManager.updateOwner(itemId,addedUsersIds.iterator().next());
} else {
throw new CoreException(new ErrorCode.ErrorCodeBuilder()
.withMessage(Messages.PERMISSIONS_OWNER_ERROR.getErrorMessage())
@@ -92,7 +107,7 @@ public class ItemPermissionsManagerImpl implements ItemPermissionsManager {
private void sendNotifications(String itemId, String permission, Set<String> addedUsersIds,
Set<String> removedUsersIds, String userName) {
- Item item = itemManager.get(itemId);
+ Item item = asdcItemManager.get(itemId);
addedUsersIds.forEach(affectedUser -> {
notifyUser(userName, true, item.getName(), itemId, affectedUser, permission);
subscriptionService.subscribe(affectedUser, itemId);
diff --git a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/test/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImplTest.java b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/test/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImplTest.java
index 439b8b6105..e215db2335 100644
--- a/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/test/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImplTest.java
+++ b/openecomp-be/backend/openecomp-sdc-item-permissions-manager/src/test/java/org/openecomp/sdc/itempermissions/dao/impl/ItemPermissionsManagerImplTest.java
@@ -1,28 +1,53 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
package org.openecomp.sdc.itempermissions.dao.impl;
-import org.mockito.*;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.verify;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.ITEM_ID_PROP;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_CHANGED;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_GRANTED;
+import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_ITEM;
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Captor;
+import org.mockito.InjectMocks;
+import org.mockito.Matchers;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.session.SessionContextProviderFactory;
import org.openecomp.sdc.itempermissions.PermissionsServices;
import org.openecomp.sdc.notification.dtos.Event;
import org.openecomp.sdc.notification.services.NotificationPropagationManager;
import org.openecomp.sdc.notification.services.SubscriptionService;
-import org.openecomp.sdc.versioning.ItemManager;
+import org.openecomp.sdc.versioning.AsdcItemManager;
import org.openecomp.sdc.versioning.types.Item;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
-import java.util.*;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.verify;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.*;
-import static org.openecomp.sdc.itempermissions.notifications.NotificationConstants.PERMISSION_CHANGED;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertTrue;
-
/**
* Created by ayalaben on 7/6/2017
*/
@@ -40,7 +65,7 @@ public class ItemPermissionsManagerImplTest {
@Mock
private PermissionsServices permissionsServicesMock;
@Mock
- private ItemManager itemManagerMock;
+ private AsdcItemManager asdcItemManagerMock;
@Mock
private SubscriptionService subscriptionServiceMock;
@Mock
@@ -54,7 +79,8 @@ public class ItemPermissionsManagerImplTest {
@BeforeMethod
public void setUp() throws Exception {
- SessionContextProviderFactory.getInstance().createInterface().create(USER, tenant);
+ SessionContextProviderFactory.getInstance().createInterface().create(USER,
+ tenant);
MockitoAnnotations.initMocks(this);
}
@@ -73,7 +99,7 @@ public class ItemPermissionsManagerImplTest {
doReturn(true).when(permissionsServicesMock).isAllowed(ITEM1_ID, USER, ACTION);
Item item = new Item();
item.setName("Item 1 Name");
- doReturn(item).when(itemManagerMock).get(ITEM1_ID);
+ doReturn(item).when(asdcItemManagerMock).get(ITEM1_ID);
Set<String> addedUsersIds =
Stream.of(AFFECTED_USER1, AFFECTED_USER2).collect(Collectors.toSet());