summaryrefslogtreecommitdiffstats
path: root/models-pdp/src/main
AgeCommit message (Collapse)AuthorFilesLines
2021-01-08Add PDP-Policy deployment table to DBJim Hahn3-1/+348
Added a table to record the PDP policy deployment status, which is required for making PAP stateless. Issue-ID: POLICY-2648 Change-Id: Ibe40ce00aca7a600051edcac49e55651c1c0164f Signed-off-by: Jim Hahn <jrh3@att.com>
2021-01-06Use annotations on parameterized typesJim Hahn3-22/+10
Updated the code to place validation annotations directly on the annotated types instead of using the @Items and @Entries annotations. Also added/updated junits for validation code. Issue-ID: POLICY-2648 Change-Id: Ia535da07a38cec77a74c5c3215b5ae784d7a4e1a Signed-off-by: Jim Hahn <jrh3@att.com>
2021-01-06Changed identifiers to concept identifiersliamfallon5-34/+32
The policy models tosca classes ToscaPolicyIdentifier and ToscaPolicyIdentifierOptVersion can be used to identify any TOSCA concept, not just TOSCA policies so they are renamed to ToscaConceptIdentifier and ToscaCinceptIdentifierOptVersion respectively. The class ToscaPolicyTypeIdentifier is redundant and is replaced by ToscaConceptIdentifier. Issue-ID: POLICY-2900 Change-Id: Id0a37c42ea4e74f07b47e1694c4f8291c35879c9 Signed-off-by: liamfallon <liam.fallon@est.tech>
2020-12-21Use annotations to do validationJim Hahn4-56/+48
Modified models to use annotations instead of function calls for most field validations. Created a few new validation annotations for use within models. Per review comments: - renamed Key to VerifyKey - enhanced VerifyKey to imply "@Valid", unless disabled Issue-ID: POLICY-2648 Change-Id: I2b53f218b0a2ab1ed1f5e278816a3509f1408972 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-12-17Use ValidationResult for models v2.0Jim Hahn6-207/+63
Policy models uses PfValidationXxx classes which are totally unrelated to ValidationResult in policy common. This precludes the use of various utility methods and annotations for doing validation. Modified policy models to use ValidationResult instead. This approach uses function calls, though a future approach could make use of annotations instead. Issue-ID: POLICY-2648 Change-Id: I9760f1dc46902ab6bef7f440f3caf5e951660a5d Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-18Changes for Checkstyle 8.32liamfallon4-8/+0
Issue-ID: POLICY-2188 Change-Id: I6db16763c1d2d80ff934302081a8dfc16afa7d9a Signed-off-by: liamfallon <liam.fallon@est.tech>
2020-04-07Address sonar issues in modelsJim Hahn2-16/+15
Addressed the following sonar issues: - use RE2 instead of java.util Pattern for "+" and "*" - don't use deprecated methods - for Date(long), sonar appeared not to parse the argument's type correctly. Modified the code slightly to make sonar happy - duplicate blocks of code - either log or throw - missing assert in junit - for SDNR & VFC, eliminated threads, as they are unnecessary - duplicate code block in different branches - useless assignments - redeclaring abstract methods - cyclomatic complexity - used lombok in some cases (e.g., EqualsAndHashCode) - assert argument order - actually deleted ControlLoopTargetType, because it is not needed and sonar complains regardless of which order is used - add private constructor to utility classes - use StandardCharsets instead of literals Also: - added logback-test.xml to SO to eliminate the voluminous output from the junit test Issue-ID: POLICY-2305 Change-Id: I586c331781bedbd54a115a71847d04d293689445 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-02-17Add/Update test cases for PdpStatistics entityhuaxing2-15/+10
Add test cases for PdpStatistics / PdpEngineWorkerStatistics / JpaPdpStatistics. Add lombok.Data annotation to PdpStatistics and PdpEngineWorkerStatistics to facilitate testing. Issue-ID: POLICY-1628 Signed-off-by: huaxing <huaxing.jin@est.tech> Change-Id: I4269678641716a56db260ad67a30c97b904123cd
2020-01-23Handling supported policy type during PdpGroup Updatea.sreekumar1-3/+8
Change-Id: I62fbfeb80b81f4cc6dc0049bbd4ab9dcc5065773 Issue-ID: POLICY-2023 Signed-off-by: a.sreekumar <ajith.sreekumar@est.tech>
2020-01-22Handling supported policy type during PdpGroup Updatea.sreekumar3-19/+34
Change-Id: I469125c232af9d78a55c3dfa71cb701cb3864015 Issue-ID: POLICY-2023 Signed-off-by: a.sreekumar <ajith.sreekumar@est.tech>
2020-01-10Remove supportedPolicyTypes from PdpStatusramverma1-7/+5
Removing supportedPolicyTypes from PdpStatus in policy/models as it is no longer expected from the Pdps to send it as part of the heartbeat or initial registration message. Instead the PdpGroupName is expected from the Pdps in the initial registration message. Issue-ID: POLICY-2256 Change-Id: I14b76a737027e146d69d89c2fe2c3f098a89e196 Signed-off-by: ramverma <ram.krishna.verma@est.tech>
2020-01-08update Db provider to support query numberning.xi1-5/+8
Issue-ID: POLICY-1629 Signed-off-by: ning.xi <ning.xi@est.tech> Change-Id: I42c9542adc44d52b760a70e710ab4cc6fa8a1b3b
2019-12-20pdp statistics database provider implementationning.xi1-0/+208
Issue-ID: POLICY-1629 Signed-off-by: ning.xi <ning.xi@est.tech> Change-Id: Ife65d50c862ed90c3c9a3cea91a2b9a8d874fa14
2019-12-10Merge "Add JpaPdpStatistics entity"Ram Krishna Verma4-0/+350
2019-12-09Add JpaPdpStatistics entityshaoqiu4-0/+350
Add JpaPdpStatistics entity which will be used in provider. Add Pdp Statistics entities Issue-ID: POLICY-1628 Signed-off-by: shaoqiu <tim.huang@est.tech> Change-Id: Iab12eb02e2e7f0e366aff64fa665b5d6674f2905 Signed-off-by: shaoqiu <tim.huang@est.tech>
2019-12-06Add models to support deltas to policy deploymentsJim Hahn3-0/+271
Change-Id: Ia5134e2ba4faeefe8bcc1333abe6acc57972c243 Issue-ID: POLICY-2274 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-11-21Allow wild cards in supported type filterJim Hahn1-1/+28
PAP was rejecting deployment of policies whose supported type contained a wild card. This was due to the fact that it was querying the Pdp Groups using a filter on the supported type, which did not take wild cards into consideration. Updated the filtering. Change-Id: I50b3202a00ac85ff09a9861d8bbe1efb6dd49ae3 Issue-ID: POLICY-1636 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-11-15Support wild cards in "supported policy types"Jim Hahn1-8/+9
Refactored PfConceptKey, extracting most of it into PfKeyImpl. Added PfSearchableKey as a subclass of PfKeyImpl. Change-Id: I524f4ce9208fc9ba09e77db4cc7dde5a21e1d7fc Issue-ID: POLICY-2224 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-27Replace copyTo methods with copy constructorsJim Hahn6-62/+28
Deleted the copyTo() method from PfConcepts and replaced uses with deep-copy constructors. Also added mapMap() and makeCopy() methods to PfUtils to facilitate. Change-Id: Id6391bb806ef0dfab6c1089278bf2b514c7e303e Issue-ID: POLICY-1600 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-07replace hashCode function with compareToHenry.Sun2-2/+2
Issue-ID: POLICY-1600 Change-Id: If660cbe84424e492b6db3ab11ef97b37f046b3aa Signed-off-by: Henry.Sun <henry.a.sun@est.tech>
2019-06-20Adding pdps class for pdpgroup healthcheckramverma1-0/+40
Adding Pdps class to hold the response for PdpGroup Heatlcheck REST API of PAP. Change-Id: I69b4979c8fdaefd3451fa0e9286dace2485cdc73 Issue-ID: POLICY-1770 Signed-off-by: ramverma <ram.krishna.verma@est.tech>
2019-06-18Change getCanonicalName to getName in modelsJim Hahn1-1/+1
Per javadocs, getName() should generally be used instead of Class.getCanonicalName(). This change only applies to classes; it does not apply to File objects. Note: this impacts the output from PfValidationMessage, as it will now list the names of embedded classes with a "$" separator instead of a ".". Change-Id: I2cd64bc0281dd324bf80eac57335a7299a516447 Issue-ID: POLICY-1646 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-06-17Fix simple sonar issues in modelsJim Hahn1-2/+2
Added @FunctionalInterface where needed. Replaced anonymous classes with lambda expressions. Replaced duplicate strings with a constant. Removed unused BeforeClass & AfterClass test methods. Removed some trailing spaces. Fixed: aai actor.appc actor.appclcm actor.sdnc actor.sdnr actor.so actor.vfc actorServiceProvider appc appclcm cds events Change-Id: I0e21cbb10db6d1217bbd0e00e6dd4fac3eb84e31 Issue-ID: POLICY-1791 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-29Address sonar issue in policy-models/pdpJim Hahn1-3/+5
Extracted a common constant. Change-Id: I24504109e9c7bbed352fa3e845d7d3f7b07db970 Issue-ID: POLICY-1708 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-25Add copy constructor for PdpStatus3.0.2-ONAPJim Hahn3-0/+51
Change-Id: Id818d3b16355ad3f3a96ff4456ec8e8062055f98 Issue-ID: POLICY-1645 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-25Populate policies, even if emptyJim Hahn1-1/+2
Modified PdpUpdate to create an empty policy list, by default, rather than leaving it null. Change-Id: I81906410bcc7da21d6471d496713ec9b375632a2 Issue-ID: POLICY-1692 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-16Don't include "nullVersion" in swagger APIJim Hahn1-0/+3
Swagger sitll uses jackson, thus it is including ToscaPolicyIdentifierOptVersion.isNullVersion() in the API that it generates. Added @JsonIgnore annotation to prevent it from being included. Similar issue with get/setVersion() in PdpGroup. Created POLICY-1653 to remove the isNullVersion() method altogether in El Alto. Change-Id: I6cb7b7d1d75258eeb9d6f9b6c7a48eeb32174307 Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-16Fix null not accepted on PDP messageliamfallon1-1/+1
Issue-ID: POLICY-1648 Change-Id: I580d1c433cd3a5730b115ef6353770f17939cf3a Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-15Fix sonar issue in PdpGroupsJim Hahn1-3/+5
Extracted common string constant. Change-Id: I5721641d8a45e7dce317cb6a1b75570a715779ea Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-15Use keys to speed DB queriesJim Hahn1-3/+3
When a filter specifies a name (and possibly version), those can be used to speed DB searches. Modified the code to use the keys rather than always retrieving every record before applying the filter. Change-Id: I6b48d9e6880ab7e8132d5d8f770394720031b9b5 Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-13Disallow empty subgroup list in group requestJim Hahn1-0/+5
Change-Id: I8a00caf1b22363fe3ab90bdf57244af687a2cb6d Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-12Check for duplicates in listsJim Hahn2-17/+26
Modified duplicate subgroup check to eliminate sonar issue. Added duplicate group check. Modified ModelsTest to exclude PdpMessage, which seemed to cause intermittent junit failures. Change-Id: Id281874506d3a39610739e24cee49360b345724f Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-12Remove version from PdpGroupliamfallon3-59/+36
Issue-ID: POLICY-1095 Change-Id: I91f495947fe77222804e7ab31c4dd7d7aee66b44 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-12Add validation methods for PAP REST APIJim Hahn3-9/+109
Also made the identifier classes comparable. Stupid tabs. Change-Id: I54c0595c6a2c61a1b72b58fe1d667657f9d5d71e Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-11Add constant PdpGroup.VERSIONJim Hahn1-0/+6
At some point, the "version" field will be removed from PdpGroup. Until then, all groups should have the same version, thus added a constant for that value. Change-Id: Ib81e2760d04bea0abf83c42bf95fe861a7471176 Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-10Finish unit test on policy-modelsliamfallon1-10/+24
Unit test coverage well over 90% in policy-models-base policy-models-dao policy-models-pdp policy-models-tosca policy-models-provider Issue-ID: POLICY-1095 Change-Id: I7703e2ae8a93575ca478c3d809ff8c1fb9f0f334 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-09Complete unit test for models-pdpliamfallon2-47/+11
This review completes the unit test for the models-pdp module, for persistence of PDP groups and for PDP group filtering. Added unit test of filters for TOSCA policy types and policies. Added fix to allow filters to pass when the value being checked is null. Issue-ID: POLICY-1095 Change-Id: I982400ef39f0282d813d49e484a58207e03b8a63 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-08Add lists and tests for PDP filtersliamfallon1-28/+70
The policy type and policy filters for PDP groups are added in this review. Also filter tests for PDP group filter is completed. Issue-ID: POLICY-1095 Change-Id: Ia28776c809f2ab879af4007b3480621637a83f69 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-08Merge "Add bug fixes and tests for filters"Jorge Hernandez5-23/+27
2019-04-08Merge "Add PdpMessage.appliesTo()"Pamela Dragosh2-1/+50
2019-04-08Add bug fixes and tests for filtersliamfallon5-23/+27
Fixed bugs on filtering where lack of null checks was blocking all results. Added unit test for PDP related JPA objects. Fixed cascading and orphan control on JPA objects. Added partial testing of PdpProvider. Added partial testing of filters. Changed tag for content of operational policies from "Content" to "content". Issue-ID: POLICY-1095 Change-Id: Ieb22e06955a8434b490bae7d0f6b77d4479515e8 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-08Add unit test for PDP groupsliamfallon3-35/+44
Unit test for the JPA concepts in models-pdp. Issue-ID: POLICY-1095 Change-Id: Id33626f3789da45e36935edf564003651e9ce7c4 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-07Add PdpMessage.appliesTo()Jim Hahn2-1/+50
Added a method to determine if a message is applicable to a particular PDP. This is a common function that should have been added previously, as each PDP type has had to create an implementation of it. Nevertheless, this provides a "reference" implementation. Change-Id: I54073c77a9d2b4c1f902c5ac0bce9fa5fa485503 Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-06Fix bugs on filtersliamfallon2-2/+26
Filters were not being invoked from providers. Filter for getting latest version was filtering out everything Filter on PDP state was not implemented. Issue-ID: POLICY-1095 Change-Id: If43ce48a57b010e05f75db8cfa80e63f2719ace1 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-05Complete filters for Database Fetchesliamfallon2-9/+94
This review completes the implementaiton of the filters for fetching policy types, policies, and PDP groups from the database. It also fixes bugs in Policy type creation. Yaml in some of the policy type examples modified so that it is syntatically correct. Proeprties now stored as a blob in DB as they can be big. Issue-ID: POLICY-1095 Change-Id: I6aef88ee2905afa58d778d82832f2b55d794fe9c Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-04Updates to models from scrum on 4/4Jim Hahn10-189/+56
Moved ToscaPolicyIdentXxx classes from models-pdp to models-tosca, and added methods to retrieve them from a ToscaPolicy. Removed version and instance fields from PdpStatus. Chose to leave "description" field in the PAP/PDP messages. The PDPs can ignore them or leave them null. In a PdpUpdate message, the description will be the description associated with the PdpGroup. In a PdpStatus message, the PDP could choose to provide a description of the PDP, itself (or the type of PDP). Added comments to that effect. Moved name, group, and subgroup fields into PdpMessage. Fixed typos in comments. Updated licenses. Change "long" to "Long" in PdpUpdate. Use lombok @ToString instead of override. Fixed merge conflict. Change-Id: Icd928f9a7630b838ad4b0b5556e899dc21b7872b Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-04-04Add filters on policy objectsliamfallon1-1/+43
I just raised this review to shwo where I'm going with the filters. They are not complete yet. Issue-ID: POLICY-1095 Change-Id: I7b602a32bb67159b893f3b3cefea5d88038c4e5f Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-04Merge "Add filter obejcts for concepts"Pamela Dragosh3-31/+46
2019-04-04Add filter obejcts for conceptsliamfallon3-31/+46
This review: - Fixes the bug in getting policies where the key fields were null - Removes complex version checks from DAO interface - Simplifies provider API by introducing filter objects for searches Issue-ID: POLICY-1095 Change-Id: I5ab7471c03e8b61849e7882ed18541acd627dc39 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-04-03Updating PdpStatistics modelramverma1-3/+4
Change-Id: Ic3ae28997dd1db14c16bdfd24a5d936393fa8da4 Issue-ID: POLICY-1443 Signed-off-by: ramverma <ram.krishna.verma@est.tech>