diff options
Diffstat (limited to 'PolicyEngineUtils/src/main/java/org/openecomp/policy/std')
4 files changed, 0 insertions, 465 deletions
diff --git a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/NotificationStore.java b/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/NotificationStore.java deleted file mode 100644 index 2f3a72946..000000000 --- a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/NotificationStore.java +++ /dev/null @@ -1,264 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * PolicyEngineUtils - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.policy.std; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashSet; -import java.util.Iterator; - -import org.openecomp.policy.api.LoadedPolicy; -import org.openecomp.policy.api.NotificationType; -import org.openecomp.policy.api.PDPNotification; -import org.openecomp.policy.api.RemovedPolicy; - - -/* - * This Should Compare and save the Notifications from the beginning of Time. - * If there is something new (missed) We notify the client. - * Works for PDP failures. - * - */ -public class NotificationStore { - private static StdPDPNotification notificationRecord = new StdPDPNotification(); - - public static StdPDPNotification getDeltaNotification(StdPDPNotification newNotification){ - StdPDPNotification notificationDelta = new StdPDPNotification(); - ArrayList<StdRemovedPolicy> removedDelta = new ArrayList<>(); - ArrayList<StdLoadedPolicy> updatedDelta = new ArrayList<>(); - Collection<StdLoadedPolicy> newUpdatedPolicies = new ArrayList<>(); - Collection<StdRemovedPolicy> newRemovedPolicies = new ArrayList<>(); - Collection<LoadedPolicy> oldUpdatedLostPolicies = notificationRecord.getLoadedPolicies(); - Collection<RemovedPolicy> oldRemovedPolicies = notificationRecord.getRemovedPolicies(); - Collection<LoadedPolicy> oldUpdatedPolicies = notificationRecord.getLoadedPolicies(); - Boolean update = false; - Boolean remove = false; - // if the NotificationRecord is empty - if(notificationRecord.getRemovedPolicies()==null || notificationRecord.getLoadedPolicies()==null){ - if(newNotification!=null){ - notificationRecord = newNotification; - } - return notificationDelta; - } - // do the Delta operation. - if(newNotification!=null){ - // check for old removed policies. - if(!newNotification.getRemovedPolicies().isEmpty()){ - for(RemovedPolicy newRemovedPolicy: newNotification.getRemovedPolicies()){ - //Look for policy Not in Remove - Boolean removed = true; - for(RemovedPolicy oldRemovedPolicy: notificationRecord.getRemovedPolicies()){ - if(newRemovedPolicy.getPolicyName().equals(oldRemovedPolicy.getPolicyName())){ - if(newRemovedPolicy.getVersionNo().equals(oldRemovedPolicy.getVersionNo())){ - removed = false; - // Don't want a duplicate. - oldRemovedPolicies.remove(oldRemovedPolicy); - } - } - } - //We need to change our record we have an Update record of this remove. - for(LoadedPolicy oldUpdatedPolicy: notificationRecord.getLoadedPolicies()){ - if(newRemovedPolicy.getPolicyName().equals(oldUpdatedPolicy.getPolicyName())){ - if(newRemovedPolicy.getVersionNo().equals(oldUpdatedPolicy.getVersionNo())){ - oldUpdatedPolicies.remove(oldUpdatedPolicy); - oldUpdatedLostPolicies.remove(oldUpdatedPolicy); - } - } - } - if(removed){ - remove = true; - notificationRecord.getRemovedPolicies().add(newRemovedPolicy); - removedDelta.add((StdRemovedPolicy)newRemovedPolicy); - } - // This will be converted to New Later. - oldRemovedPolicies.add(newRemovedPolicy); - } - } - // Check for old Updated Policies. - if(!newNotification.getLoadedPolicies().isEmpty()){ - for(LoadedPolicy newUpdatedPolicy: newNotification.getLoadedPolicies()){ - // Look for policies which are not in Update - Boolean updated = true; - for(LoadedPolicy oldUpdatedPolicy: notificationRecord.getLoadedPolicies()){ - if(newUpdatedPolicy.getPolicyName().equals(oldUpdatedPolicy.getPolicyName())){ - if(newUpdatedPolicy.getVersionNo().equals(oldUpdatedPolicy.getVersionNo())){ - updated = false; - // Remove the policy from copy. - oldUpdatedLostPolicies.remove(oldUpdatedPolicy); - // Eliminating Duplicate. - oldUpdatedPolicies.remove(oldUpdatedPolicy); - } - } - } - // Change the record if the policy has been Removed earlier. - for(RemovedPolicy oldRemovedPolicy: notificationRecord.getRemovedPolicies()){ - if(oldRemovedPolicy.getPolicyName().equals(newUpdatedPolicy.getPolicyName())){ - if(oldRemovedPolicy.getVersionNo().equals(newUpdatedPolicy.getVersionNo())){ - oldRemovedPolicies.remove(oldRemovedPolicy); - } - } - } - if(updated){ - update = true; - updatedDelta.add((StdLoadedPolicy)newUpdatedPolicy); - } - // This will be converted to new Later - oldUpdatedPolicies.add(newUpdatedPolicy); - } - // Conversion of Update to Remove if that occurred. - if(!oldUpdatedLostPolicies.isEmpty()){ - for(LoadedPolicy updatedPolicy: oldUpdatedLostPolicies){ - StdRemovedPolicy removedPolicy = new StdRemovedPolicy(); - removedPolicy.setPolicyName(updatedPolicy.getPolicyName()); - removedPolicy.setVersionNo(updatedPolicy.getVersionNo()); - removedDelta.add(removedPolicy); - remove = true; - } - } - } - // Update our Record. - if(!oldUpdatedPolicies.isEmpty()){ - for(LoadedPolicy updatedPolicy: oldUpdatedPolicies){ - newUpdatedPolicies.add((StdLoadedPolicy)updatedPolicy); - } - } - if(!oldRemovedPolicies.isEmpty()){ - for(RemovedPolicy removedPolicy: oldRemovedPolicies){ - newRemovedPolicies.add((StdRemovedPolicy)removedPolicy); - } - } - notificationRecord.setRemovedPolicies(newRemovedPolicies); - notificationRecord.setLoadedPolicies(newUpdatedPolicies); - // Update the notification Result. - notificationDelta.setRemovedPolicies(removedDelta); - notificationDelta.setLoadedPolicies(updatedDelta); - if(remove&&update){ - notificationDelta.setNotificationType(NotificationType.BOTH); - }else if(remove){ - notificationDelta.setNotificationType(NotificationType.REMOVE); - }else if(update){ - notificationDelta.setNotificationType(NotificationType.UPDATE); - } - } - return notificationDelta; - } - - public static void recordNotification(StdPDPNotification notification){ - if(notification!=null){ - if(notificationRecord.getRemovedPolicies()==null || notificationRecord.getLoadedPolicies()==null){ - notificationRecord = notification; - }else{ - // Check if there is anything new and update the record. - if(notificationRecord.getLoadedPolicies()!=null || notificationRecord.getRemovedPolicies()!=null){ - HashSet<StdRemovedPolicy> removedPolicies = new HashSet<>(); - for(RemovedPolicy rPolicy: notificationRecord.getRemovedPolicies()){ - StdRemovedPolicy sRPolicy = new StdRemovedPolicy(); - sRPolicy.setPolicyName(rPolicy.getPolicyName()); - sRPolicy.setVersionNo(rPolicy.getVersionNo()); - removedPolicies.add(sRPolicy); - } - HashSet<StdLoadedPolicy> updatedPolicies = new HashSet<>(); - for(LoadedPolicy uPolicy: notificationRecord.getLoadedPolicies()){ - StdLoadedPolicy sUPolicy = new StdLoadedPolicy(); - sUPolicy.setMatches(uPolicy.getMatches()); - sUPolicy.setPolicyName(uPolicy.getPolicyName()); - sUPolicy.setVersionNo(uPolicy.getVersionNo()); - updatedPolicies.add(sUPolicy); - } - - // Checking with the new updated policies. - if(notification.getLoadedPolicies()!=null && !notification.getLoadedPolicies().isEmpty()){ - for(LoadedPolicy newUpdatedPolicy: notification.getLoadedPolicies()){ - // If it was removed earlier then we need to remove from our record - Iterator<StdRemovedPolicy> oldRemovedPolicy = removedPolicies.iterator(); - while(oldRemovedPolicy.hasNext()){ - RemovedPolicy policy = oldRemovedPolicy.next(); - if(newUpdatedPolicy.getPolicyName().equals(policy.getPolicyName())) { - if(newUpdatedPolicy.getVersionNo().equals(policy.getVersionNo())) { - oldRemovedPolicy.remove(); - } - } - } - // If it was previously updated need to Overwrite it to the record. - Iterator<StdLoadedPolicy> oldUpdatedPolicy = updatedPolicies.iterator(); - while(oldUpdatedPolicy.hasNext()){ - LoadedPolicy policy = oldUpdatedPolicy.next(); - if(newUpdatedPolicy.getPolicyName().equals(policy.getPolicyName())) { - if(newUpdatedPolicy.getVersionNo().equals(policy.getVersionNo())) { - oldUpdatedPolicy.remove(); - } - } - } - StdLoadedPolicy sUPolicy = new StdLoadedPolicy(); - sUPolicy.setMatches(newUpdatedPolicy.getMatches()); - sUPolicy.setPolicyName(newUpdatedPolicy.getPolicyName()); - sUPolicy.setVersionNo(newUpdatedPolicy.getVersionNo()); - updatedPolicies.add(sUPolicy); - } - } - // Checking with New Removed Policies. - if(notification.getRemovedPolicies()!=null && !notification.getRemovedPolicies().isEmpty()){ - for(RemovedPolicy newRemovedPolicy : notification.getRemovedPolicies()){ - // If it was previously removed Overwrite it to the record. - Iterator<StdRemovedPolicy> oldRemovedPolicy = removedPolicies.iterator(); - while(oldRemovedPolicy.hasNext()){ - RemovedPolicy policy = oldRemovedPolicy.next(); - if(newRemovedPolicy.getPolicyName().equals(policy.getPolicyName())) { - if(newRemovedPolicy.getVersionNo().equals(policy.getVersionNo())) { - oldRemovedPolicy.remove(); - } - } - } - // If it was added earlier then we need to remove from our record. - Iterator<StdLoadedPolicy> oldUpdatedPolicy = updatedPolicies.iterator(); - while(oldUpdatedPolicy.hasNext()){ - LoadedPolicy policy = oldUpdatedPolicy.next(); - if(newRemovedPolicy.getPolicyName().equals(policy.getPolicyName())) { - if(newRemovedPolicy.getVersionNo().equals(policy.getVersionNo())) { - oldUpdatedPolicy.remove(); - } - } - } - StdRemovedPolicy sRPolicy = new StdRemovedPolicy(); - sRPolicy.setPolicyName(newRemovedPolicy.getPolicyName()); - sRPolicy.setVersionNo(newRemovedPolicy.getVersionNo()); - removedPolicies.add(sRPolicy); - } - } - notificationRecord.setRemovedPolicies(removedPolicies); - notificationRecord.setLoadedPolicies(updatedPolicies); - } - if(!notificationRecord.getLoadedPolicies().isEmpty() && !notificationRecord.getRemovedPolicies().isEmpty()){ - notificationRecord.setNotificationType(NotificationType.BOTH); - }else if(!notificationRecord.getLoadedPolicies().isEmpty()){ - notificationRecord.setNotificationType(NotificationType.UPDATE); - }else if(!notificationRecord.getRemovedPolicies().isEmpty()){ - notificationRecord.setNotificationType(NotificationType.REMOVE); - } - } - } - } - - // This should return the current Notification Record. - public static PDPNotification getNotificationRecord(){ - return notificationRecord; - } -} diff --git a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdLoadedPolicy.java b/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdLoadedPolicy.java deleted file mode 100644 index e11ec8ce7..000000000 --- a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdLoadedPolicy.java +++ /dev/null @@ -1,72 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * PolicyEngineUtils - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.policy.std; - -import java.util.Map; - -import org.openecomp.policy.api.LoadedPolicy; -import org.openecomp.policy.api.UpdateType; - -public class StdLoadedPolicy implements LoadedPolicy{ - private String policyName = null; - private String versionNo = null; - private Map<String,String> matches = null; - private UpdateType updateType = null; - - @Override - public String getPolicyName() { - if(policyName!=null && policyName.contains(".xml")){ - return (policyName.substring(0, policyName.substring(0, policyName.lastIndexOf(".")).lastIndexOf("."))); - } - return this.policyName; - } - - public void setPolicyName(String policyName) { - this.policyName = policyName; - } - - @Override - public String getVersionNo() { - return this.versionNo; - } - - public void setVersionNo(String versionNo) { - this.versionNo = versionNo; - } - - @Override - public Map<String,String> getMatches() { - return this.matches; - } - - public void setMatches(Map<String,String> matches) { - this.matches = matches; - } - - @Override - public UpdateType getUpdateType() { - return this.updateType; - } - - public void setUpdateType(UpdateType updateType){ - this.updateType = updateType; - } -} diff --git a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdPDPNotification.java b/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdPDPNotification.java deleted file mode 100644 index 6a6bf23e5..000000000 --- a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdPDPNotification.java +++ /dev/null @@ -1,80 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * PolicyEngineUtils - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.policy.std; - -import java.util.Collection; -import java.util.HashSet; - -import org.openecomp.policy.api.LoadedPolicy; -import org.openecomp.policy.api.NotificationType; -import org.openecomp.policy.api.PDPNotification; -import org.openecomp.policy.api.RemovedPolicy; - -public class StdPDPNotification implements PDPNotification{ - private Collection<StdRemovedPolicy> removedPolicies = null; - private Collection<StdLoadedPolicy> loadedPolicies = null; - private Collection<RemovedPolicy> removed = null; - private Collection<LoadedPolicy> updated = null; - private NotificationType notificationType= null; - - @Override - public Collection<RemovedPolicy> getRemovedPolicies() { - removed = new HashSet<RemovedPolicy>(); - if(removedPolicies!=null){ - for(RemovedPolicy removedPolicy: removedPolicies){ - removed.add(removedPolicy); - } - return this.removed; - }else{ - return null; - } - } - - @Override - public Collection<LoadedPolicy> getLoadedPolicies() { - updated = new HashSet<LoadedPolicy>(); - if(loadedPolicies!=null){ - for(LoadedPolicy updatedPolicy: loadedPolicies){ - updated.add(updatedPolicy); - } - return updated; - }else{ - return null; - } - } - - @Override - public NotificationType getNotificationType() { - return notificationType; - } - - public void setNotificationType(NotificationType notificationType){ - this.notificationType= notificationType; - } - - public void setLoadedPolicies(Collection<StdLoadedPolicy> loadedPolicies) { - this.loadedPolicies = loadedPolicies; - } - - public void setRemovedPolicies(Collection<StdRemovedPolicy> removedPolicies) { - this.removedPolicies = removedPolicies; - } -} diff --git a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdRemovedPolicy.java b/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdRemovedPolicy.java deleted file mode 100644 index 665f3c584..000000000 --- a/PolicyEngineUtils/src/main/java/org/openecomp/policy/std/StdRemovedPolicy.java +++ /dev/null @@ -1,49 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * PolicyEngineUtils - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.policy.std; - -import org.openecomp.policy.api.RemovedPolicy; - -public class StdRemovedPolicy implements RemovedPolicy{ - private String policyName = null; - private String versionNo = null; - - @Override - public String getVersionNo() { - return this.versionNo; - } - - public void setVersionNo(String versionNo) { - this.versionNo = versionNo; - } - - @Override - public String getPolicyName() { - if(policyName!=null && policyName.contains(".xml")){ - return (policyName.substring(0, policyName.substring(0, policyName.lastIndexOf(".")).lastIndexOf("."))); - } - return this.policyName; - } - - public void setPolicyName(String policyName) { - this.policyName = policyName; - } -} |