summaryrefslogtreecommitdiffstats
path: root/controlloop/templates/template.demo/src
AgeCommit message (Collapse)AuthorFilesLines
2017-10-25Fix Source/Target Lockdaniel3-2/+4
The locking of the target is now taken care of when the operation manager is initialized. This allows us to keep the template flow the same and to ensure that for vFW we will not lock the source if it is not intended to be the target. NOTE: This will have to be revised in the future if policy chaining will support having different targets specified for each policy in the chain. Additional work was done for hardening the APPC model code to make sure exceptions are caught and we gracefully end processing the event with memory clean up and a final failure notification sent. Issue-Id: POLICY-367 Change-Id: Ic796d95eb5400067744492f810dd8069ba6241b3 Signed-off-by: Daniel Cruz <dc443y@att.com> Signed-off-by: daniel <dc443y@att.com>
2017-10-24Change vnf-id to vnf-namedaniel2-13/+13
These changes now allow a lookup of the source vnf-id based on the onset's vnf-name. Issue-Id: POLICY-366 Change-Id: I6f6bd500b892dddbbb9e12156b4486208309e21d Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-10-23Fix handling of aai 'get' errorsCharles Cole5-116/+310
Now reject an event if the AAI get query for the event fails. Added test cases for this behavior. Fixed some issues from my previous pull request. Issue-Id: POLICY-314 Change-Id: I674e95302a271423c307a88d061064e12e491a7a Signed-off-by: Charles Cole <cc847m@att.com>
2017-10-18Add support for AAI Named Query error handlingCharles Cole1-1/+95
Errors from AAI after a Named query now throw an AAIEXception. This is caught in the template to allow the resources to be removed from memory and a final failure to be thrown. Issue-ID: POLICY-314 Change-Id: I319d29ef537b2d01ca288622aac1d9dbbe05f5eb Signed-off-by: Charles Cole <cc847m@att.com>
2017-10-17Fix Target Entity Lockdaniel1-0/+399
This fix enables the pdp to stop events with different requestId's/controlLoopNames from being processed if the target entity specified is already being processed by another event/controlloop. The lock timeout rule is removed to stop the event from waiting to obtain a lock if it was not already required. Handling of the lock denied case is taken care of in the event manager rule instead of in a seperate rule to avoid further unneccessary computation. A new control loop test case was created that is for testing general control loop errors. The test case included is for testing that the lock will deny a request with a duplicate target entity. Issue-ID: POLICY-341 Change-Id: Ib62286eff74ec22b2c645f32f385cb331fb1dff3 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-10-17Fix operation history DB properties for JunitsTemoc Rodriguez1-0/+5
Removed operation_history.properties / operations-history.properties. Changed the properties in persistence.xml so that it uses the correct values. Previously junit would never write to db because the "guard.disabled" property was not set. Set this property. Additionally the operationshistory10 table was trying to be created even though it exists. These values work in junit code. Not tested on rackspace yet. Issue-ID: POLICY-345 Change-Id: Id755b3152ae6ac4991ea9c314154592ea0105070 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-10-11Enable junits to work with the archetype templateCharles Cole6-1295/+161
Control loop junits now use the actual PolicyEngine instead of a simulation, allowing them to work with the archetype template Issue-ID: POLICY-101 Change-Id: I910961996aaf831f4e91b7d7173d05fdfdd77683 Signed-off-by: Charles Cole <cc847m@att.com>
2017-10-06Fix Build Errorsdaniel4-8/+8
Removing the legacy "demo" project as this uses obsolete code. The operation and control loop timeouts were increased to allow more time for the simulators to respond. Issue-Id: POLICY-291 Change-Id: I1143352cefaf9749ca0eca55927960535b2599b8 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-10-05Fix JUnit Race Conditionsdaniel9-1210/+452
This fix now implements the observer pattern for the PolicyEngineJUnitImpl so that the test cases can be notified when an event is available to be pulled. This eliminates the need to sleep the thread for some arbitrary time to let the rules process events. Issue-ID: POLICY-291 Change-Id: I884c959c20b95a1b58f357602099d8a01c8d2e3c Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-28Delete ControlLoopXacmlGuardTest.javaTemoc Rodriguez7-426/+13
Deleted ControlLoopXacmlGuardTest.java so avoid sonar blockers. This junit will reduce coverage a bit but is not significant. This junit is already covered by the other use case junit files in template demo. A more robust junit is in need to test guard permit, deny, and pdp-x misconnecion in relation to the drl operations and rules. For now, this file does not add useful testing. Issue-ID: POLICY-260 Change-Id: Iaed0ad62f72ddc5b9a6b7626a037c26d6fd1ca52 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-09-28Fix Retries for Policiesdaniel7-27/+25
This applies changes to make retries work properly for all control loops. The current design was ignoring the upper bound of the retries and retrying until either a success or control loop timeout occured. This is now fixed to only do retries until the limit is reached that is specified from the policy. The operation is now started in the GUARD.PERMITTED rule. I think this is better because it stops Policy from doing extra processing if there is a guard deny. This is also needed so that we can properly do retries for all cases. The notifications sent in GUARD_NOT_YET_QUERIED and GUARD.RESPONSE are now more informative with the message specifying the actor and recipe. The not queried rule has a message stating that we are sending a query to guard and the guard response message in the guard response rule specifices the result from guard. During a retest of vDNS it appeared that the archetype template was no longer working, this was because there were changes in the JUnit template that were not reflected in the archetype template. These were added to archetype and vDNS is verified to work again. Another small fix needed was making sure the action for vCPE is "Restart" instead of "restart". APPC will reject our request if "Restart" is not sent as the action. Issue-ID: POLICY-259 Change-Id: I28dd3c9a629d297b408775a01afadd5c19351e37 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-28Add missing auth headers to guard requestTemoc Rodriguez3-2/+10
Added guard authentication, client authentication, and environment http headers to the pdp-x guard restful request. Properties are set to PolicyEngine.manager. Property getter, setter, and properties in guard/.../Util.java. Test properties defined in junits themselves. Added code from GuardContext.java to grab the properties and make restful request. PolicyGuardXacmlHelper now closely resembles GuardContext in order to mimic functionality. Guard url no longer is passed into CallGuardTask, it is now a property. Issue-ID: POLICY-260 Change-Id: I5b144764828b6da0e7b738a578e4f6596a0f4f36 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-09-27Fix Use Case Templatedaniel4-14/+39
This is a WIP for getting guard to work. Currently the A&AI GET and named queries are connecting to the simulator and working in the labs. Guard is not connecting to simulator and needs further analysis. Issue-ID: POLICY-259 Change-Id: If9875bfd83cbd82dcae04a876b3818ec9c07b1f7 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-26force maven dependency plugin version to latestJorge Hernandez6-34/+39
the 2.1 version that comes with the ubuntu installation have problems with the maven repositoryUrls. disable asserts in fact counts, it seems almost impossible to get clean builds in jenkins server because these junit failures. Change-Id: I551f00a4a927f87a5e6294d936e9b9c926f21880 Issue-ID: POLICY-265 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-26Fix TestSO propertiesTemoc Rodriguez5-13/+22
TestSO was missing the environment properties for AAI and SO url, user, and pass. Set SO and AAI properties in TestSO.java. If this is not set, then the response will be null and the junit will fail. Moved setting properties to Util.java to promote code reuse. Issue-ID: POLICY-259 Change-Id: Id73611abab900675a1f2b543f71566baa05318b2 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-09-25Fix Usecase Template for VoLTEdaniel1-0/+12
This includes VoLTE support for the amsterdam template. As of right now all use cases are able to get a final success with guard disabled and no A&AI GET queries. Currently, the GET query is not working in the lab. I will address this in another pull request. Issue-ID: POLICY-259 Change-Id: I216aa84daaa1e93ab12c56ee53283b4cb413a7c3 Signed-off-by: Daniel Cruz<dc443y@att.com>
2017-09-22Fix Use Case Testingdaniel5-9/+31
These changes are necessary to get the use cases working on an actual PDP. So far vCPE, vFW, and vDNS have been tested successfully on a pdp. These are priliminary tests to just test a FINAL SUCCESS without A&AI GET queries being used. A&AI named queries for vFW and vDNS have been verified to work. Changes in the template were made for SO as there were changes in the JUnit template that did not get reflected in the archetype template. Changes in the code were made in various places to use the environment properties for REST urls, usernames, and passwords. Due to VoLTE not being tested yet, the url for VFC is still hard coded and will be changed later. It has been confirmed with APPC that LCM will have two topics: APPC-LCM-READ and APPC-LCM-WRITE. Policy needs to sink to APPC-LCM-READ and pull from source APPC-LCM-WRITE. This has been reflected in the controller properties file. Issue-ID: POLICY-259 Change-Id: Ib9a8df07ae5ad9d3052c88907c1e522952af474d Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-21Add VFC Response in Working Memory & JUNITRitu Sood3-6/+402
Adding code to insert VFC reponse in working memory and handling that response. Also adding JUNIT and yaml file for VoLTE usecase. Issue-Id: POLICY-212 Change-Id: I74a13272ccd931478d27d80715d8c3ac756fb5c7 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2017-09-21Implement restful call to xacml pdp guardTemoc Rodriguez3-8/+9
Removed the embedded guard decision and replace with restful call to xacml pdp to restore guard functionality. Set guard URL with PolicyEngine env properties. Modified templates accordingly. Issue-Id: POLICY-260 Change-Id: Ic1558a6ebdd5f6d1b74a748f69433f6213dbf984 Signed-off-by: Temoc Rodriguez <cr056n@att.com> Signed-off-by: Hockla, Ali (ah999m) <ah999m@att.com>
2017-09-15Modify AAI simulator to support new requestsCharles Cole5-7/+7
Updated the AAI simulator to support new AAI queries. Also, modified the post response to allow multiple responses. Added code to ensure the simulators were able to sucessfully start up. Change-Id: I3e855b5e54c073f55fbaadc0064c140695fc1a58 Issue-ID: POLICY-200 Signed-off-by: Charles Cole <cc847m@att.com>
2017-09-14Added changes for vDNS Use CaseHockla, Ali (ah999m)4-32/+328
-Renamed remaining MSO classes and packages to SO and modified drl accordingly -Connected SO Interface to SO Simulator -Added vDNS Control Loop junit -Modified SOActorServiceProvider to reflect AAI class changes (POLICY-103) Issue-ID: POLICY-102 Change-Id: Iea5d3f096c4ccfedde68e79d7593d66331127aaf Signed-off-by: Hockla, Ali (ah999m) <ah999m@att.com>
2017-09-12Fix A&AI Named Query for vFWdaniel1-0/+17
The vFW named query has now been verified with the A&AI simulator. Null checks were added to make the namedQuery method work properly. In addition, a recursive A&AI response parser was added to traverse the response to find the correct generic-vnf object with the target vnf-id. For now the simulator URL is hard coded and the UUID of the named query is hard coded. These should be configurable in future releases. Issue-ID: POLICY-104 Change-Id: I05a1a992ff68ca2c17fb6a578983e6b21626bf44 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-11Add Support for Locking VNF Target Typesdaniel3-11/+10
Fixed the target lock to support vnf target_types. Generic-vnf.vnf-id and generic-vnf.vnf-name are also supported when retrieving the target instance from the onset. These changes are relfected in the vFW and vCPE junits as they now work with VNF target types. Issue-ID: POLICY-222 Change-Id: I92abeb02c769d35f3a9912cce6eaaec4c9cc8efb Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-11Move the simulators to a new packageCharles Cole8-341/+25
Moved the simulators to the simulators project in controlloop/common. They can now be accessed with the Util class in the simulators project or the Util class in template.demo, for backwards compatability. Also renamed AaiSimulator to AaiSimulatorJaxRs Issue-IS: POLICY-200 Change-Id: Id131af0243777db31a8f22e110d8a708dc033dcf Signed-off-by: Charles Cole <cc847m@att.com>
2017-09-08Added changes for vDNS Use Case - MSO InterfaceHockla, Ali (ah999m)5-4/+549
Rebased and fixed merge conflicts Issue-ID: POLICY-102 Change-Id: Icc36a2cf6391aa9137593bc04f0d4543798b7ccd Signed-off-by: Ali Hockla <ah999m@att.com> Signed-off-by: Hockla, Ali (ah999m) <ah999m@att.com> Signed-off-by: HOCKLA <ah999m@att.com> Signed-off-by: Hockla, Ali (ah999m) <ah999m@att.com>
2017-09-07Add in-mem db to ControlLoopXacmlGuardTestTemoc Rodriguez3-85/+116
Add in-mem specification in test/resources/META-INF/persistence.xml for junit. Use system properties to choose which db to use. Removed named parameters in PIPEngineHistory.java. Change 6.3.0 versions of drools-core to 6.5.0 in pom. Make PIPEngineGetHistory query more general. Increased sleep times in junit. Issue-ID: POLICY-55 Change-Id: I6bc65fd88c43c4e7143f27a7e6d8666c2c4df060 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-09-06Add APPC LCM Interfacedaniel9-18/+1136
The LCM model code and service provider code is implemented. This model code is now used for the vCPE use case scenario. The vFW use case is still using the legacy APPC API as request by APPC for Policy to use in R1. The APPC service provider now generates a demo legacy APPC request with pg-streams. An A&AI named query is implemented for the vFW use case. The code for obtaining the generic-vnf.vnf-id is not in use until we set up the A&AI simulator to work without having cyclical depenncies inside the POMs. JUnits for the vFW and vCPE use cases are now supported. These JUnits test the complete flow of each scenario. A&AI testing is not supported in the JUnit test yet. These JUnits use a target type of VM as VNF is not supported yet. This will be changed when the Target Lock supports VNF. Amended to fix Sonar blockers. Issue-ID: POLICY-104 Change-Id: I46869c5fd5094919da55ad563d608fe6d4b6fea7 Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-09-01Add vFC and MSO SimulatorsCharles Cole5-0/+224
Added vFC and MSO Simulators for jUnit testing Issue-ID: POLICY-201, POLICY-202 Change-Id: Ia30ff6ec74a8ee4fa71ce0456eb6dcb60c897695 Signed-off-by: Charles Cole <cc847m@att.com>
2017-08-31Add mock AAI endpoint for jUnit testingCharles Cole4-238/+261
Created an AAI endpoint for use in jUnit testing of closed loops. Added unit tests for my endpoint. Added methods to Util in template.demo to support creation of AAI endpoints and kieSessions. Issue-ID: POLICY-101 Change-Id: I8e110b79f4c2ca700b29dcb29e9828303772d56d Signed-off-by: Charles Cole <cc847m@att.com>
2017-08-29Restored global ControlLoopLoggerMagnusen, Drew (dm741q)1-1/+2
Restored previously deleted global ControlLoopLogger which is loaded into the kieSession for the test. Issued-ID: POLICY-197 Change-Id: I55e9a3a0c2627ecbecbef8059e70d672e6157fdc Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-08-28Merge "Removal of sys.out/err with logger messages"Jorge Hernandez2-29/+33
2017-08-28Removal of sys.out/err with logger messagesMagnusen, Drew (dm741q)2-29/+33
Removed any use of System.out.println or System.err.println and replaced with relevant logger statements. Issue-ID: POLICY-176 Change-Id: I91513267635bfb2a34f2a9650c48f367d53fc842 Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-08-28Fix JUnit Test for ControlLoopsdaniel2-7/+6
Fixed the test case by using getters and setters for Policy objects in the drl. Added gson dependency in the pom to fix gson runtime errors. Fixed dependencies in template.demo pom to add vfc. The drl was having compilation errors in the guard permitted rule due to the operation request object not being casted into a VFCRequest when being passed into the VFCManager. Issue-ID: POLICY-194 Change-Id: Id71c74ad9727ad942a683f63a0dfad3f22b6376b Signed-off-by: Daniel Cruz <dc443y@att.com>
2017-08-24Add VFC integration codeRitu Sood1-4/+10
This patch adds VFC Actor code and updates drool template for VFC. This is WIP patch. There are two opens for this patch that are still in discussion 1) AA&I fields in onset event 2) VFC URL, username and password Issue-ID: POLICY-57 Change-Id: Idc1d1fada295fa1c2e563ba37dd359f7b5c59f87 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2017-08-15Policy-yaml changesTarun Tej Velaga1-7/+7
Changes to Policy-yaml and sdc projects based on changes from policy/engine. Issue-Id: POLICY-88 Change-Id: Ic1a58f00029b9a66db6980fc7732a2ac57390229 Signed-off-by: Tarun Tej Velaga <tt3868@att.com>
2017-07-24[POLICY-76] Remove/rename ATT internal stuffsGao, Chenfei (cg287m)10-2635/+0
Change-Id: I251bd2c4f6852a563a4899024d138ebad6c52999 Signed-off-by: Gao, Chenfei (cg287m) <cgao@research.att.com>
2017-07-20[POLICY-76] Remove/rename ATT internal stuffsGao, Chenfei (cg287m)1-0/+277
Change-Id: I3ec4fa22e22e9fccf4b6783b3bc8c92da25e181f Signed-off-by: Gao, Chenfei (cg287m) <cgao@research.att.com>
2017-07-20[POLICY-80] Adding the Policy Guard featuresMichael Borokhovich16-466/+162
Two Policy Guard features added: Frequency-limiter and Blacklist. Change-Id: I48184ab0ae9760c9ea7594cd7346b456aa964d48 Signed-off-by: Michael Borokhovich <michael@research.att.com>
2017-07-13[POLICY-22] gitignore autogened filesGao, Chenfei (cg287m)1-0/+0
Change-Id: I9777f3cc8ee61e6a55dba94bf455ff367814f762 Signed-off-by: Gao, Chenfei (cg287m) <cgao@research.att.com>
2017-06-29[POLICY-22] Reorganizing drools-appsGao, Chenfei (cg287m)23-0/+4694
Change-Id: I5f9bb3908f8d55c466dd847ae5e01a424e9ba364 Signed-off-by: Gao, Chenfei (cg287m) <chenfei.gao11@gmail.com> Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>