summaryrefslogtreecommitdiffstats
path: root/controlloop/common/eventmanager
AgeCommit message (Collapse)AuthorFilesLines
2020-10-27Bump drools-apps master to 1.8.0 SNAPSHOTJim Hahn1-1/+1
Bumping minor version now that guilin branch has been created. Also repointed to snapshot versions for dependencies. Issue-ID: POLICY-2875 Change-Id: Ieb3f8d6ff141d3035141ab8672d3259074f432be Signed-off-by: Jim Hahn <jrh3@att.com>
2020-10-20Bump drools-apps to 1.7.5 SNAPSHOTJim Hahn1-1/+1
Issue-ID: POLICY-2869 Change-Id: I627c5b1c4c5f946c1187a6966b30d3943825fa71 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-10-10bump drools-apps to 1.7.4-SNAPSHOTTaka Cho1-1/+1
Issue-ID: POLICY-2839 Change-Id: Ie0bc82d0f8a09dc4d65e056dc7836870dae58835 Signed-off-by: Taka Cho <takamune.cho@att.com>
2020-10-08Bump drools-apps to 1.7.3 snapshotTaka Cho1-1/+1
Issue-ID: POLICY-2839 Change-Id: Iafbc4a301ee8bc2b5fb10f34677f752a87997879 Signed-off-by: Taka Cho <takamune.cho@att.com>
2020-09-30Fix new sonars in drools-appsJim Hahn3-2/+14
Addressed the following sonars: - too many assertions in test method - rename test class - use static method to modify static field - use already defined constant - code always returns the same value - use assertNotSame - use appropriate class name to access static method - define a constant - extract nested try block - don't always return the same value - use remove() instead of set(null) for thread-local-storage - add @Override Issue-ID: POLICY-2852 Change-Id: Icc62acd4ad57afa2d44ed4cdca504a3ac0810228 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-09-09bump snapshot version to 1.7.2-SNAPSHOTjhh1-1/+1
Issue-ID: POLICY-2789 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I4335cf77bd4a228fe0bec2d5eb529789e8144406
2020-09-08Update common/models/drools to 1.7.1/2.3.1/1.7.1jhh1-6/+0
Issue-ID: POLICY-2789 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: Ia78684b0f56007941ad6038d78b97bc70f9aa1bb Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
2020-09-02Merge "Allow guards to be dynamically enabled/disabled"Ram Krishna Verma2-3/+30
2020-08-31Allow guards to be dynamically enabled/disabledJim Hahn2-3/+30
Modified drools-apps so that guards can be dynamically enabled and disabled. Due to the current design, there are two properties that control this: - an actor-level property: when enabled, the DB connection is created, otherwise a stub connection is created. This property is NOT dynamic - an engine-level property: when enabled, the connection created by the actor is used, otherwise a stub connection is used. This property IS dynamic Issue-ID: POLICY-2748 Change-Id: I2a5baf908ce274f2eb46a6a3f01df1b3532038ff Signed-off-by: Jim Hahn <jrh3@att.com>
2020-08-31Merge "Add tdjam-controller"Jim Hahn3-34/+114
2020-08-28Add tdjam-controllerStraubs, Ralph (rs8887)3-34/+114
the details is on wiki: https://wiki.onap.org/display/DW/tdjam+Feature+for+Tosca-Driven+Control+Loops Fixed some eclipse warnings. Revised the interaction between a manager and its SerialWorkQueue to address some threading issues. The original code started processing the event as soon as the manager was created, WHILE it was still being added to the map. During junit tests, the event responses came back, within the same thread, which then attempted to remove the manager from the map. This resulted in a ConcurrentHashMap exception. Issue-ID: POLICY-2415 Change-Id: I94a4152637be76e5b2aea2d869afd84dfb413a0e Signed-off-by: Straubs, Ralph (rs8887) <rs8887@att.com> Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Signed-off-by: Taka Cho <takamune.cho@att.com> Signed-off-by: Jim Hahn <jrh3@att.com>
2020-08-28Tweaks to drools-apps for new usecases controllerJim Hahn2-2/+2
Made the following updates: - modified feature-controlloop-utils to pull from the usecases controller instead of the frankfurt controller - modified ONAPInstance in the xacml-pdp Decision request - log Step2 property changes as info() instead of error() - log Lock acquisition as info() instead of warn() Issue-ID: POLICY-2748 Change-Id: I6b4b5877bbd6731acb761d09d0f0dec85561b163 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-08-27Use ToscaPolicy instead of legacy PolicyJim Hahn17-437/+333
Removed usage of policy-yaml and old targetType definition. Switched to using TOSCA operational policy classes and new definitions for Target type enum. Issue-ID: POLICY-2428 Change-Id: I25d1c5219764df27bdae7f2cbeb7ada7bcef4e1e Signed-off-by: Jim Hahn <jrh3@att.com> Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2020-08-25Add Usecases-specific event managerJim Hahn1-2/+1
Created new "usecases" event manager. Also fixed a couple of sonar issues in the new code. Issue-ID: POLICY-2748 Change-Id: I17a2c41bbf4f4e8158adbd8aa5e32ef570daa9d3 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-08-24Merge "Add "special" Operation classes for new usecases"Pamela Dragosh2-8/+21
2020-08-21remove legacy operational policies supportjhh5-53/+9
Issue-ID: POLICY-2765 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I454365943465863b108ba8668b2bc4b201986959
2020-08-21Add "special" Operation classes for new usecasesJim Hahn2-8/+21
Created place-holder for new "usecases" controller. Note: as of yet, this is still just a normal java project; it will be turned into a full-fledged kie-based controller in a later review. Added some Operation and a few other support classes that will be needed. Note: the detmTarget() method and it's various supporting methods, detmXxx(), found in GetTargetEntityOperation2 were cloned from the pre-existing ControlLoopOperationManager2 class, and modified to fit the strategy of the new controller. Likewise for the junit tests of those methods. Issue-ID: POLICY-2748 Change-Id: Idffa135a11a56bd6afdd2728706fd40168e80912 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-08-20Add generic eventmanager classesJim Hahn6-0/+1331
Added classes that are event-agnostic and support moving control from java into rules. Updates per review comments: - removed policy scope Issue-ID: POLICY-2748-event-mgr Change-Id: Icf811cc25a3975543fc5c725766b7b9df2bb87b0 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-07-16Fix drools-apps CSITJim Hahn1-0/+5
Saw this in the log: java.lang.NoClassDefFoundError: org/onap/policy/models/decisions/concepts/DecisionRequest Added decisions jar to the (hopefully correct) pom. Issue-ID: POLICY-2558 Change-Id: I5a2796b3eda6b3b39b2844cd112f5a18acfa0cf8 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-07-14Remove usecases and legacy actor codeJim Hahn13-4289/+4
Made the following changes to remove usescase and legacy actor code: - deleted the usecases controller and feature - deleted code associated with legacy actors, with the exception of AaiManager, which is needed by RestControlLoopManager - moved the contents of the "guard" project into the m2/guard project, as that is the only thing that still needs it - modified the m2/GuardContext to get the name of its persistence unit from the properties so it could be overridden by junit tests - used eclipselink constants Also fixed a bug in the properties for the VFC actor. Addressed review comment: - removed usecases from Dockerfile Issue-ID: POLICY-2558 Change-Id: I677d68c9efed9247c3d55773abdcc736b577a6b4 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-07-10Bump drools-apps to 1.7.1-SNAPSHOTJim Hahn1-1/+1
Issue-ID: POLICY-2695 Change-Id: Iec9af37a01ba35c5b5419399cfb3d3bc80093101 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-07-06fix complete the assertionTaka Cho2-9/+19
add isInstanceOf for assertThatThrownBy. Issue-ID: POLICY-2616 Change-Id: If49255aec6004870d7d2acfeabe258def872c1fa Signed-off-by: Taka Cho <takamune.cho@att.com>
2020-07-02Use new Actor names in drools-appsJim Hahn4-27/+27
Modified drools-apps to use XxxActor instead of XxxActorServiceProvider. This is the second step of the rename. Issue-ID: POLICY-2684 Change-Id: Iea60e92f914b7719ac765b086650479be9192d98 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-29Fix build breakage in drools-apps due to pairJim Hahn2-22/+22
The Pair changes made in drools-pdp also broke drools-apps builds. Replaced usage of drools.utils.Pair with apache Pair. Issue-ID: POLICY-2202 Change-Id: I50aaad47c243637688602ae6cb680a929fe3edd9 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-25Use parent snapshot in drools-appsJim Hahn1-1/+0
Fixed checkstyle issues that were subsequently reported. Also fixed a few eclipse warnings. Also fixed some of the sonar issues in the files that were touched: - use "{}" in logger calls - camelcase method names - use "<?>" instead of generics - add serialization ID Issue-ID: POLICY-2188 Change-Id: I5c94a2e26dd74a61a0a919e1c3da17ab02a5bc9d Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-19Changes for checkstyle 8.32Jim Hahn3-6/+3
Issue-ID: POLICY-2188 Change-Id: Ib90222c537c5440e0de52fa0acbaa99bbcc4772a Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-11Remove deprecated properties for CDS and VFCJim Hahn2-6/+6
Now that the changes to the Actors have been merged, the former properties can be removed, too. Also fixed guard operator/operation name since it changed from "Guard" to "Decision". Issue-ID: POLICY-2629 Change-Id: I1c8d4575be598a8cab12b1aa4ad9b1d3e1f12113 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-09reduce sonar issue - drool-applicationsTaka Cho2-17/+17
In some conditions for assertTrue, sonarcloud recommends using assertEquals Assert.assertTrue(a.equals(b)); Assert.assertTrue(a == b); Assert.assertTrue(a == null); Assert.assertTrue(a != null); Assert.assertFalse(a.equals(b)); Compliant Solution Assert.assertEquals(a, b); Assert.assertSame(a, b); Assert.assertNull(a); Assert.assertNotNull(a); Assert.assertNotEquals(a, b); Change-Id: Ic50bf6e961b74abcc698c2cc0347dd0472fefe71 Issue-ID: POLICY-2616 Signed-off-by: Taka Cho <takamune.cho@att.com>
2020-06-02Merge "Use OperationsHistory from models"Pamela Dragosh5-57/+57
2020-06-01Use actor constants instead of literalsJim Hahn1-2/+4
Modified drools-apps to use constants from the actor classes instead of hard-coded literals. Only made this change in code that uses the new actor model, as the old code will be deleted during this release. Issue-ID: POLICY-1242 Change-Id: Iac718159fd7cf571a48ac620585bf2b8f94c1e5d Signed-off-by: Jim Hahn <jrh3@att.com>
2020-06-01Use OperationsHistory from modelsJim Hahn5-57/+57
Deleted Dbao and replaced it with the shared class in policy-models. Also had to update the queries and the persistence.xml accordingly. Note: with this change, the "database" project is no longer needed, so it was deleted. Issue-ID: POLICY-2581 Change-Id: Idfde68b28b3a27f2ee794fa477d15e0f12717373 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-28Generate SDNR notification in drools-appsJim Hahn2-21/+54
Modified drools-apps to generate the SDNR notification using the SDNR-response provided by the actor in the operation outcome, instead of using the controlloop-response provided in the operation outcome, as the latter is deprecated. Issue-ID: POLICY-2593 Change-Id: I70ee4a4b11345a4295d720250a63f407f51cb0bd Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-27Do additional processing when control loop times outJim Hahn2-5/+37
When the overall control loop times out, a notification is sent to POLICY-CL-MGT, but then the event is discarded. Modified the code to update the operation history, if an operation had been started, and to generate an SDNR notification, if appropriate. Applied the same logic for when a lock is lost. Issue-ID: POLICY-2582 Change-Id: I35510ec8a3cfc6b2ca9be5751896f3c0f7d9bd09 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-26Merge "Generate SDNR notification even on timeout"Ram Krishna Verma2-1/+59
2020-05-26Bump Drools-Apps to 1.7.0a.sreekumar1-1/+1
Change-Id: I1b4b088d276da6aae3b577102470a6d8e3dcdc6a Issue-ID: POLICY-2514 Signed-off-by: a.sreekumar <ajith.sreekumar@bell.ca>
2020-05-26Bump drools-applications to 1.6.5a.sreekumar1-1/+1
Change-Id: I52c0b421e6ca94153b7f37ae67fdcd086f14f3fa Issue-ID: POLICY-2514 Signed-off-by: a.sreekumar <ajith.sreekumar@bell.ca>
2020-05-22Generate SDNR notification even on timeoutJim Hahn2-1/+59
If a request to SDNR times out, the actor class does not generate a notification for the DCAE_CL_RSP topic. Rather than modifying the actor, decided to modify models to handle that case. Seems like that's where it belongs anyway, as notifications are more of an application- level behavior. Issue-ID: POLICY-2580 Change-Id: Id9426c223b719efce337a604316f19335dae8a94 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-22Use "outcome" to indicate pending recordJim Hahn3-0/+14
Mariadb is setting the "endtime" to the current time by default, so rather than indicate a pending record using a null endtime, just modified the code set "outcome" to "Started" to indicate a pending record. Also added code to ensure the "outcome" is never null, as that causes a DB error. Also addressed a comment from a previous review to log a warning message if more than one matching record is found in operations history. Issue-ID: POLICY-2581 Change-Id: I6bf67551cef46808a79cc15afeb0abbfc1b6d945 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-21Insert pending record when operation startsJim Hahn4-37/+139
Modified code to insert a pending record when an operation starts. Also modified it to update the existing record when the operation completes, rather than adding a new record. Note: the "outcome" for a "pending" record is left unset (i.e., it is null). Issue-ID: POLICY-2581 Change-Id: Ia1a02ed5a16b8af1328a49b22478fd57c4b9aca0 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-05-18Add getter for ControlLoopPolicy instance in ControlLoopProcessordc443y1-0/+1
This is to allow other frameworks, such as M2, to obtain the ControlLoopPolicy instance after the raw ToscaPolicy has been adapted. Issue-ID: POLICY-2574 Change-Id: I003e60991f6e4007bd30f0e9392f6fa8bf21733a Signed-off-by: dc443y <dc443y@att.com>
2020-05-13Handle duplicate events in drools-appsJim Hahn1-0/+18
Modified the frankfurt rules to compare the event objects instead of comparing the request ID when determining if an event is new. The event object's equals() method ignores the request ID when doing the comparison, thus it will treat an event as a duplicate even if the request ID is different, which is the behavior we want. Also removed the @Ignore from the junit that tests for duplicate events in the hope that this change will fix it. If the docker build still breaks, then @Ignore can be added back in. Issue-ID: POLICY-2557 Change-Id: If2b9fd26473d78a356218b951bfe160f93daeb32 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-04-28Bump drools-apps to 1.6.4-SNAPSHOTPamela Dragosh1-1/+1
Issue-ID: POLICY-2510 Change-Id: Ic431fa80f7b389c84b799f8662df81b4f0ea124f Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2020-04-27Bump drools-apps 1.6.3-SNAPSHOTPamela Dragosh1-1/+1
Before I can re-release, the patch needs to be bumped. Issue-ID: POLICY-2510 Change-Id: Ib868d0d72cd28f87b5eb7c233f239d219f699954 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2020-04-15bump to 1.6.2-SNAPSHOTjhh1-1/+1
Issue-ID: POLICY-2378 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I8feb308f90755a078d0b35e0d8742e385916c225
2020-04-08Add SDNR notifications to frankfurt rulesJim Hahn2-0/+16
Issue-ID: POLICY-2468 Change-Id: Ibf4d3e5f62fa3106028dcf85050c270b8eab0a89 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-04-02Synchronize methods for rulesJim Hahn1-9/+9
Added "synchronized" to a few more methods in the event manager class, just to be safe, as they view/modify data that may be viewed/modified by other threads. Issue-ID: POLICY-2385 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: Ia8404fd3fd53b0de95f939dfff2088867e0f3b24
2020-03-26Expand env variables in frankfurt propertiesJim Hahn3-33/+14
Issue-ID: POLICY-2434 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I1109a053e46dc8201ff9676da0c9ff93d8b631d5 Signed-off-by: Jim Hahn <jrh3@att.com>
2020-03-25Merge "Fix db exception in frankfurt junit"Jorge Hernandez7-27/+41
2020-03-25Bump drools-applications to 1.6.1-SNAPSHOTPeyton Puckett1-1/+1
Issue-ID: POLICY-2378 Change-Id: Ia97bc810e6ae23ffb0ecea28ddbab385d7d9af6d Signed-off-by: Peyton Puckett <peyton.puckett@att.com>
2020-03-25Fix db exception in frankfurt junitJim Hahn7-27/+41
Frankfurt junits were generating the following output: Value too long for column "TARGET VARCHAR(50)": "'Target [type=VNF, resourceId=bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38]' The issue turned out to be caused by the fact that the rules for the new actor were storing the "Target" instead of the "TargetEntity" in the DB field. Modified the code to store the target entity, as the the usecases rules do. Issue-ID: POLICY-2441 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I91ee517ef073e3dc3fea4698c814b57a06d87095