summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-11-06Merge "Fix duplicate code in drools-pdp RestManager"Liam Fallon1-342/+222
2019-11-06Address drools-pdp sonar issuesJim Hahn5-90/+65
Addressed more sonar issues in drools-pdp: - unwrap multiple instances of the same annotation (NamedQuery) - use lambda instead of anonymous class - duplicate code; addressed by using annotation instead of toString. This still leaves other duplicate code. Issue-ID: POLICY-2203 Change-Id: I8c6ff6562820af638044f134eb8a6725a5f05e8e Signed-off-by: Jim Hahn <jrh3@att.com>
2019-11-06Fix duplicate code in drools-pdp RestManagerJim Hahn1-342/+222
Change-Id: I22821a5027d01f0965c54b60389d3988ac53ed5c Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-11-05Fix syntax error in DistributedLock "DELETE"Jim Hahn1-2/+2
Changed the "DELETE" to "DELETE FROM" to fix this error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I10a398c13dc3da547d2b3ea47564ab0d5761a2ee
2019-11-04Use jersey dependencies from policy-endpointsliamfallon6-49/+0
There is no need to ahve Jersey dependencies in the PDP POMs as they are inherited fromt he policy-endpoints POM. Issue-ID: POLICY-2209 Change-Id: Iaa51995864eec0bf5b4134719c32e956295084a1 Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-11-01Add common Jersey versionliamfallon3-56/+55
Add a common version of Jersey for all Policy Framework components. Issue-ID: POLICY-2209 Change-Id: Iab5a62475eb73b5e4db8a02cfa029002a7f5f8ea Signed-off-by: liamfallon <liam.fallon@est.tech>
2019-11-01Merge "Refactor duplicate code from lock managers"Jorge Hernandez8-491/+1228
2019-10-31Refactor duplicate code from lock managersJim Hahn8-491/+1228
Change-Id: I8910a1a4267d824f064b52c6ad08945590bd9617 Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-10-31upgrade to 7.28.0.Final drools librariesjhh6-66/+35
commons-lang does not seem to be packaged anymore (commons-lang3 still does, which is the desired one). There are some @SupressWarning that seem to have no effect that were removed. Some libraries that were explicitly added are transitively used now in the latest version of drools, hence some rework in the dependency and exclude sections. We will need to generate a clm report to verify. Issue-ID: POLICY-1407 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I44e09183caca72f5f33bdec0b8fa88b0b4793055 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2019-10-31Merge "Provide a way to trigger Drools rules when an update occurs"Liam Fallon6-0/+361
2019-10-31Provide a way to trigger Drools rules when an update occursStraubs, Ralph (rs8887)6-0/+361
An instance of 'DroolsInitFeature.Init' is inserted into a Drools session when it is initialized, updated, or restored from persistent data. This provides an opportunity to catch more initialization scenarios than you can with an empty 'when' clause. Updates: 1) Change 'DroolsInitFeature' to use Policy Engine scheduled executor 2) Add new test to 'DroolsInitFeatureTest' to verify that the 'Init' object is inserted into and deleted from Drools memory 3) Remove trailing spaces Issue-ID: POLICY-1948 Change-Id: I4748c2415c4563e98b4a53d573c9ebe1e96e8e34 Signed-off-by: Straubs, Ralph (rs8887) <rs8887@att.com>
2019-10-30Fix more sonar issues in drools-pdpJim Hahn2-5/+5
Sonar issue fixed: - log or rethrow exception - empty code block; moved the comment inside the empty "synchronized" block Change-Id: I55ca87a321b3a1e4079dae6d5a4d44b651cb3086 Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-10-29Fix new sonar issues in drools-pdpJim Hahn1-11/+9
Did not address duplicate code issues. Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I304a02dbe9b1425df38abae815df0cff8faa0692
2019-10-29Cleanup eclipse warnings in drools-pdpJim Hahn2-2/+1
Issue-ID: POLICY-2203 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I3e854b1ea1986cd4992dc2ff84d799e970e443a9
2019-10-25Merge "Allow encrypted property values"Jorge Hernandez8-65/+350
2019-10-24Symmetric Key configurationjhh1-0/+4
Issue-ID: POLICY-1945 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I58de93f031bd6482f928be70fc7114ad0a04f0a5
2019-10-24Handle DB error codes in distributed lockingJim Hahn6-74/+30
The commons library wraps the SQLExceptions within its own SQLException, so changed the code to simply look for a cause that's SQLTransientException, eliminating the need to check specific error codes. Deleted the error code property now that it is no longer needed. Also updated the distributed locking properties to include examples. Issue-ID: POLICY-2113 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: If46e85a81cfc952e561174fea670df81efb8309a
2019-10-24Allow encrypted property valuesjhh8-65/+350
Issue-ID: POLICY-1945 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I0317a6de838d99b579638252859e42fc49cedfa8 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2019-10-17Reimplement Lock API using Lock objectsJim Hahn38-3300/+5406
Modified PolicyResourceLockManager to just return a feature, deferring the lock() call/method to the feature, itself. The manager was also modified so that, if it can't find an enabled provider, it will return a default provider, whose lock() methods always fail. Once a feature has been identified, the manager will cache it for use thereafter. Modified the feature API to return lock objects and simplified the interface to remove the beforeXxx and afterXxx methods. Moved the unlock and refresh methods from the feature API into the lock class, renaming them to free and extend, respectively. Added a separate, feature-simple-locking project, which implements a simple version of the locking feature, over a single JVM. Extensively revised the distributed locking feature to fit in with the new API. Added support for persistence so that the various LockImpl classes can be serialized and still function correctly when they are deserialized back into new feature instances Added default implementations of free & extend to LockImpl. Modified API to take the ownerKey string, instead of the owner object. Removed Extractor as unneeded - may add via another review, if still useful. Updates per review comments: - Updated licenses in feature-simple-locking - Added beforeCreateLock & afterCreateLock to feature API - Moved SimpleLockingFeature into policy-management so that it's always available - Moved the executor service, "exsvc", into PolicyEngine - Moved Extrator into policy-utils - Changed Extractor logging level for exceptions - Fixed feature sequence numbers - Fixed mixing of seconds and milliseconds - Renamed exsvc - Modified to use property method with default value - Configured scheduled executor - Added suffix to Extractor.register() - Eliminated Feature Api and tied lock manager into engine - Added non-null checks to LockImpl parameters - Added non-null checks to createLock() parameters - Checked that lockManager is initialized Change-Id: Iddba38157ddc5f7277656979c0e679e5489eb7b1 Issue-ID: POLICY-2113 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-10-15Merge "Add 'PolicySession.insertDrools' method"Jorge Hernandez3-2/+40
2019-10-15Add 'PolicySession.insertDrools' methodStraubs, Ralph (rs8887)3-2/+40
This change includes feature hooks, so a "smart insert" could forward the object to a remote host, and do the insert there. The methods 'insert' and 'insertAll' in 'PolicyContainer' now make use of this smart insert. Change-Id: I69f0e874b6fda09d1f457e4353e4b30d63696210 Issue-ID: POLICY-2160 Signed-off-by: Straubs, Ralph (rs8887) <rs8887@att.com>
2019-10-10Replace protobuf-java 2.6.0 dependency with 3.6.1Bruno Sakoto1-0/+21
This change fixes protobuf-java library conflict when running policy because of presence of 2.6.0 and 3.6.1 librairies in pdp docker container. Issue-ID: POLICY-2088 Signed-off-by: Bruno Sakoto <bruno.sakoto@bell.ca> Change-Id: Ifcebf2207dc54543083d080151e0685d51792be5
2019-10-07Modify property files in active-standby-managementPeyton Puckett2-50/+52
Remove ${env:} and update property syntax Add new property failure.threshold Add new property interval_sec Update: change property syntax back to using ${env:} Update: add 2019 to copyright information Issue-ID: POLICY-2031 Change-Id: I6db10700189197a1306c3b8fa23dff26518be0f3 Signed-off-by: Peyton Puckett <peyton.puckett@att.com>
2019-10-03Add encoding declaration to pom.xmlPeyton Puckett1-11/+12
Small pom change to add encoding declaration Remove two trailing spaces Update: remove additional trailing spaces Issue-ID: POLICY-2036 Change-Id: I326e2cae576c53ee14150a28d6826d675f470578 Signed-off-by: Peyton Puckett <peyton.puckett@att.com>
2019-10-02Remove windows carriage returnPeyton Puckett6-1699/+1699
Remove windows CR from code in feature-controller-logging/ Remove windows CR from code in feature-mdc-filters/ Issue-ID: POLICY-2032 Change-Id: I9779f6907fb5a50ab6129969081c2228ce91d3a7 Signed-off-by: Peyton Puckett <peyton.puckett@att.com>
2019-09-20Address junit failure in active-standbyJim Hahn1-199/+46
In testLocking1(), the sleep() call after the final demote() was allowing the background FPManager thread to re-promote the PDP before the next test in the test case. Removed the sleep() call, thus preventing it from being re-promoted before the test. As that's the last test in that particular test case, it shouldn't cause a problem. In the process of diagnosing and fixing the problem, made the additional changes below. Made each junit runnable independently so that background threads could be terminated and started afresh with each test. Decreased the maximum "real" wait time of the tests, as the main thread only needs to wait an instant for the other threads to fire. Modified code to use common entity manager factories rather than creating them for each test. Deleted unnecessary sleeps at the end of tests. Deleted unnecessary db clean-ups at the start of tests (already done by the @Before method. Change-Id: Ia9f1053be564d85f1b29e47379ab184ffdbac235 Issue-ID: POLICY-2080 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-09-16Add YAML support to drools-pdp rest servletsJim Hahn9-23/+32
Drools-pdp depends on some of the GsonJackson annotations that cannot be easily worked around via standard gson. Consequently, this continues to use the JacksonHandler for json-encoding, thus it uses the YamlJacksonHandler for yaml-encoding. Added YAML to swagger "consumes" list. Change-Id: Ic70c68bb274222db571b3515cbf1ab22d9ff2366 Issue-ID: POLICY-2081 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-09-10Bump versions for drools-pdp masterJim Hahn24-24/+25
Change-Id: I9882ab12334dc4b548de527ab2d7dbfc22177113 Issue-ID: POLICY-2045 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-09-09Releasing drools-pdp 1.5.25.0.0-ONAPPamela Dragosh1-0/+4
Releaseing 1.5.2 of drools-pdp Issue-ID: POLICY-2045 Change-Id: I874b50d95ec94f784ebe5348f90cc23460f2114d Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2019-09-09Upgrade to released artifactsPamela Dragosh1-3/+3
Released artifacts are parent, common and models Issue-ID: POLICY-2045 Change-Id: I8cc38806d25887c8af1a1c7580e50741e968e4f1 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2019-09-04Split Engine start method into "start" and "open"jhh5-61/+174
"open" meaning to open external configuration interfaces to external provisioning systems. Issue-ID: POLICY-2055 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: Ic984f0ebccd088503b6b13620c3b80ed8e640899 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2019-08-30Merge "Remove AlertSeverity from logback in drools-pdp"Jorge Hernandez7-56/+18
2019-08-29Remove AlertSeverity from logback in drools-pdpJim Hahn7-56/+18
Merged severity and AlertSeverity in the MDC, and updated the logback xml files accordingly. The logback patterns for the metrics log had a place for both Severity and AlertSeverity; the latter was replaced with an empty place-holder so-as to maintain the same position for the other fields. Change-Id: Ic0977e1133cc4219394f2d71ca8ebae080620e0b Issue-ID: POLICY-1989 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-29remove staging profile from settings.xmljhh1-21/+0
Issue-ID: POLICY-1371 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I969b69386f307669d0d5f70e8618f0e56552d133
2019-08-26optionally source .conf filesjhh1-6/+5
.conf files are now optional as environment variables can be used instead without needing a .conf. Issue-ID: POLICY-1371 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I2cec20fe40d3bfd020e40c9925760de022d4ef34
2019-08-23Merge "update keystore"Pamela Dragosh1-0/+0
2019-08-22update keystorejhh1-0/+0
Issue-ID: POLICY-1988 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: Ia823e0439a0749719118a18e296c70cce501b968 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2019-08-21Use pseudo time for junitsJim Hahn21-480/+529
Modified feature-active-standby-management and feature-lifecycle to be able to use TestTimeMulti, eliminating the need for sleep() calls in the junit tests and speeding the tests up significantly. Also modified feature-active-standby-management to use a memory DB for its junit tests. Change-Id: I6d7ae61bb73cbb19ff405b8d9fb660e92732edbb Issue-ID: POLICY-1968 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-15Fix more sonar issues in drools-pdpJim Hahn21-1739/+1698
Addressed issues of cyclomatic complexity and deep nesting by refactoring code into separate methods. In some cases, had to refactor the code into nested classes to avoid passing too many parameters to the newly extracted methods. Addressed issue "too many conditionals" by breaking conditionals apart. Addressed issue "Remove usage of generic wildcard type" by eliminating "? extends" from return values. Addressed issue "Remove this use of 'Thread.sleep()'" in junit tests by introducing latches or using Awaitility. Note: this won't build until ApiUtils has been merged. Change-Id: I0d5596b4cb918a36bc22f426f426bd238195b458 Issue-ID: POLICY-1968 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-13Fix sonar issues in drools-pdpJim Hahn98-1316/+1843
Address sonar issue, "Move constants to a class or enum", by moving them from interfaces to classes: ActiveStandbyFeatureApi StateManagementFeatureApi PolicyResourceLockFeatureApi PolicySessionFeatureApi DroolsController DroolsControllerFeatureApi PolicyControllerFeatureApi PolicyEngineFeatureApi HealthCheck SystemPersistence EventProtocolCoder PolicyController PolicyEngine TestTransaction MdcTransaction Address sonar issue, "Move constants to a class or enum", by change the interface to a class: DroolsProperties Address sonar issue, "Override the "equals" method in this class", by adding equals & hashCode to: DroolsPdpEntity DroolsPdpImpl Use lombok for a number of getters & setters. Address sonar issue, "Define a constant instead of duplicating this literal" in: DroolsPdpsElectionHandler JpaDroolsPdpsConnector MavenDroolsController GenericEventProtocolCoder GsonProtocolCoderToolset RestManager Address sonar issue, "Remove the parentheses around the parameter" in: MavenDroolsController Address sonar issue, "Replace this lambda with a method reference" in: LifecycleFsm Address sonar issue, "Move this constructor to comply with Java Code Conventions" in: LifecycleStateRunning Address sonar issue, "Replace this 'switch' statement by 'if' statements to increase readability", as specified in: PolicyEngineManager Address sonar issue, "Rename field to prevent any misunderstanding/clash with field" in: MdcTransactionImpl Address sonar issue, "Either log or rethrow this exception", in: RestManager Address sonar issue, "Rename this constant name to" uppercase, by replacing enums with static lists in: RestManager Addressed review comments: Fixed license dates. Renamed getSiteName/setSiteName methods to getSite/setSite in the interface to match the field names in the implementation classes. Renamed *Instance classes to *Constants. Next round of review comments. Change-Id: I1c26af9f194833dd773f2b25dc5f60cde163201c Issue-ID: POLICY-1968 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-08Upgrade to snapshot integration parent artifactBruno Sakoto1-1/+1
Issue-ID: POLICY-1603 Signed-off-by: Bruno Sakoto <bruno.sakoto@bell.ca> Change-Id: I90268bbb34d0ab6b5597b47a18671e7c4f0b2dfe
2019-08-07Bump version of drools-pdpJim Hahn27-30/+33
Updated the remaining *.pom files. Updated java test file that uses the version. Changed versions in *.pom files to all be 1.0.0. Change-Id: Ia75cdfa5704b1e16b3c78e0257e619cd41220f93 Issue-ID: POLICY-1965 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-08-06Add release 1.5.1 filejhh1-0/+4
Issue-ID: POLICY-1953 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I128189bf37b5742c4a80db52cd2b923a96d8fcd8
2019-08-06Update to latest common/models released versionsjhh1-2/+2
policy/models: 2.1.2 policy/common: 1.5.1 Issue-ID: POLICY-1953 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: Id9c8f91d85248e2431175ffe4f0808b7157ec402
2019-07-31Expand AAF_NS in properties to onap.org.osaaf.aafjhh1-4/+4
Change-Id: I2e8f887093f9ba3e1fd9c5038dd4ad41d2a5c4c7 Issue-ID: POLICY-1959 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2019-07-31Fix junit broken by new addTopic(List) methodJim Hahn2-5/+5
Addition of new TopicEndpoint.addTopic() method resulted in errors like the following in drools-pdp: [ERROR] ... reference to addTopicSources is ambiguous both method addTopicSources(Properties) and method addTopicSources(List<TopicParameters>) match Fixed the junits to disambiguate the method invocation. Change-Id: Ibd648412f22290099c1213e9a1b45ab34bcbb859 Issue-ID: POLICY-1953 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-07-26Merge "Sonar ignored test"Jim Hahn1-2/+2
2019-07-26Merge "Add lombok.config to drools-pdp"Jorge Hernandez1-0/+2
2019-07-26Sonar ignored testJim Hahn1-2/+2
Renaming test file in an attempt to get sonar to include it. Change-Id: I72ecc4255e45dabeec0ce86f8be5ce7daa8cb999 Issue-ID: POLICY-1772 Signed-off-by: Jim Hahn <jrh3@att.com>
2019-07-26Add lombok.config to drools-pdpJim Hahn1-0/+2
This prevents sonar from checking lombok annotations for code coverage. Change-Id: I3458f76623a353d5ff0e900ce74aa1c80aa9cc66 Issue-ID: POLICY-1938 Signed-off-by: Jim Hahn <jrh3@att.com>