summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-service/src
AgeCommit message (Collapse)AuthorFilesLines
2023-05-02Align the hazelcast cluster namesmpriyank5-23/+28
- We need to align the hazelcast cluster names as members of the same cluster can join each other. We will still have exclusivity as the instance names and configs are different for each distributed object. - Exposing env variable to override the cluster name depending on the env it is run on. - Modified test cases to validate the cluster names as well Issue-ID: CPS-1637 Change-Id: Ib0f8c80dc9b2268f976b0c2d3ccd6d64792d4781 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-04-28Timeout for Subscription Create Partial Responselukegleeson12-76/+478
- Implemented default 30s timeout for DMI Responses - Placeholders have been TODO'd for Outcome Response generation and Persisted Subscription Updating - Refactored common HazelcastCacheConfig methods - Some tests required a blocking variable due to seperate thread usage Issue-ID: CPS-1599 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I2b1a35e93939daa0524d379ac4736d714ef61a6f
2023-04-27Merge "Add retry mechanism on Subscription loader"Luke Gleeson3-3/+66
2023-04-27Add retry mechanism on Subscription loaderemaclee3-3/+66
Issue-ID: CPS-1568 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: I35697c260cc1a774f50d12552996b39f812fc2de
2023-04-27CPS-1553 :REST endpoint to accept collection of cm handles for GET operationsourabh_sourabh21-258/+570
-Introduced an interface having all un-implemented or default defination of any method that is further extended or implemented by abstract or stubbed controller. -Exposed an endpoint to accept bulk request -Modified an existing methods for more readability. (Parameterized datasource for ... methods) -Code impl. for getResourceDataFromDmi method to send bulk request to new proposed dmi-plugin endpoint that would accept bulk request. -We need to investigate a groovy test that fails only into onap CICD pipeline. For now it's commented out by added TODO tag. (org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy:205) Issue-ID: CPS-1553 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ieac39690956e3a0eab41068db57c5d93a16d04f0 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-04-24Extend capability of distributed cachempriyank3-2/+62
- Extend cache configs to be able to work in stanalone mode as well as in cluster mode in kubernetes. - Expose the parameters to enable or disable the feature. - to make it work in standalone mode autodiscovery config will take care , and to run it on kubernetes enable the kubernetes option and provide the service name property. Issue-ID: CPS-1637 Change-Id: I704c4aa11e65b17b5be80048e4246079014d8bb7 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-04-17[CPS] Removing the duplicate producer coderaviteja.karumuri6-118/+29
# Using the existing 'EventPublisher' class and deleting the duplicated producer classes. Issue-ID: CPS-1557 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: I6dd8e9c9d9dbec06a2c9464fc2d382fa89f6fc32
2023-04-14[CPS] Re-structuring the packages for better understandingraviteja.karumuri27-45/+42
Issue-ID: CPS-1557 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: I16be74808eea6e3ce24574ae24ce082063bd0de9
2023-04-12Remove "isTagged" mapping methodlukegleeson1-6/+1
Remove redundant mapping method causing sonarqube violation Issue-ID: CPS-1394 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: Ie3ed1411c05fcc3671e547b80b41826dcd6e1fab
2023-04-11Merge "[CPS] Fix SonarQube Violations / Improve Coverage - Recurring task"Toine Siebelink2-21/+29
2023-04-11[CPS] Fix SonarQube Violations / Improve Coverage - Recurring taskraviteja.karumuri2-21/+29
Issue-ID: CPS-475 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: I7429e1563608159b5592a2dc52ab5383f11a8ab3
2023-04-06Toggle subscription persistence for model loaderlukegleeson2-6/+15
Current implementation will attempt to persist the subscription model for subscription create events even when the model loader is disabled which causes a persistence error. Subscription Model will now be persisted based on whether the model loader is enabled Issue-ID: CPS-1394 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I8f8cfc47996eed6b95fd3958996f16c8395dc341
2023-04-03Merge "Persist SubscriptionEvent"Priyank Maheshwari12-20/+430
2023-03-30Persist SubscriptionEventlukegleeson12-20/+430
- Updated subscription.yang to subscription name instead of client name - Implemented Mapper for SubscriptionEvent to yang model version - Implemented Subscription Persistence for storing subscriptions - Minor changes to existing variable names Issue-ID: CPS-1394 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: Ibe066006a913cb7f6e52b6fa8a851e976a338ac3
2023-03-30[CPS] Improve code coverage for Class 'SubscriptionModelLoader'raviteja.karumuri2-57/+68
Issue-ID: CPS-1584 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: Ief2b14cc90c24db50a95f1c62661b1918413408e
2023-03-28[CPS] Fix SonarQube Violations / Improve Coverage - Recurring taskraviteja.karumuri1-7/+21
Issue-ID: CPS-475 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: Id3507fb24c4c6eb002a9ae6fed553daa2fca7895
2023-03-27Enhanced logging for bugmpriyank1-3/+4
- Added minor logging and temporarily converted some debug logs to info level Issue-ID: CPS-1566 Change-Id: I2c706ecd601b06f2a92388b318a44640c682bdd1 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-03-22NCMP Inventory documentation updateseanbeirne1-8/+21
- Updated release notes Issue-ID: CPS-1494 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: I43fc285da9d6699326d5e0a933fdb3c5c7abcb12
2023-03-22Merge "Subscription model with status and predicates"Priyank Maheshwari1-4/+19
2023-03-21Subscription model with status and predicatesemaclee1-4/+19
Issue-ID: CPS-1497 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: I4a81389797620eac9b67f31ddcbb4d5168d742ce
2023-03-21Add event to mapper as wellmpriyank4-4/+12
- Explicitly add event to the mapper - Also parameterized the cm-events topic to be overridden later Issue-ID: CPS-1554 Change-Id: Ia6e75117dbb4214648d40318989c4c5fe6fd69f1 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-03-20Avc Event prop renamempriyank3-3/+3
- rename the eventTarget property as eventSource as per the schema in the spike - fixed the integration test and sample file Issue-ID: CPS-1554 Change-Id: Ieb8b749c6f64d69d87cacadae17a4589e9908cf2 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-03-15Merge "Forward Subscription Information to DMI Plugin(s)"Priyank Maheshwari10-37/+299
2023-03-14subscription-registry node in subscription loaderlukegleeson2-1/+50
Adding top node subscription-registry for the adding of subscriptions Issue-ID: CPS-1548 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I4107293ce023e4c53dbb8b5d3feb0922cc3d4817
2023-03-13Forward Subscription Information to DMI Plugin(s)lukegleeson10-37/+299
Note: Implemented common EventsPublisher class Issue-ID: CPS-1431 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I292a95f2c990a140f5fd63622ca4eba3f8284b9e
2023-03-10Introduce control switchmpriyank3-3/+16
- introduced a control switch and keeping it as false due to init issues Issue-ID: CPS-1537 Change-Id: I8455a5ff6fea09527c6f810ffbc620b4e38c488c Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-03-09Bug:SubscriptionModelLoader.getFileContentAsStringemaclee1-1/+1
Issue-ID: CPS-1537 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: Icc88a8bf40830853a208e79658f3c590185ad051
2023-03-08[CPS] Add configurable params for topicmpriyank1-1/+1
- Configurable parameter for topic dmi-cm-events Issue-ID: CPS-1538 Change-Id: I5396ee8f50f33ea3c117291a314f10c1870966bc Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-03-06Merge "JAVA onboarding of YANG model"Priyank Maheshwari6-0/+364
2023-03-03JAVA onboarding of YANG modelemaclee6-0/+364
- removed docker compose init container - removed init container script files - created new model loader class to onboard YANG model which runs after the application has set up - new model loader class is created in new package in cps-service (org.onap.cps.ncmp.init) Issue-ID: CPS-1467 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: I35fe82817aff7783520acf8db66ad504271026bd
2023-03-02Refactor cmHandle(ID) queriesseanbeirne12-721/+569
- first execute cm-handle id search only - get cm handles for ids only when needed using multiple-get-method - use Collection interface where posisble (instead of Set) - use java Function to combine multiple queries in a more genric way Issue-ID: CPS-1494 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: Icfcb8ec94f75e261303aaee5c9034b920c01f3c4
2023-02-27Expand CPS Service Integration Test (framework)ToineSiebelink2-5/+5
- Created package structure - Created several test bases - Created complete test set for Admin service - Created first test for Data service - Added human-readable toString() to FetchDescendantsOption for test reporting and debuging purposes - Renamed fetch descendants (enum) direct children option for consistency with others options - TODO: Add sample performance test (and base) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I75317686161be41662b6bf81314a9cd425ddd6eb
2023-02-23Revert "Omit descendants when not need in ncmp inventory queries"lukegleeson3-45/+14
This reverts commit eba77598601a7e3430f9582dfe433495ded3244c. Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I76a0d1252177c4115de9190ee7f3bb6d15c4e19a
2023-02-22Omit descendants when not need in ncmp inventory queriesseanbeirne3-14/+45
-Seperated tests by Id and details Issue-ID: CPS-1494 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: Ia1c2b637aa5ab2ffe3a92930d74af1dd7d0dbe92
2023-02-20Merge "CPS-1401 Implement V2 of GET Data Node API"Luke Gleeson11-49/+63
2023-02-17CPS-1401 Implement V2 of GET Data Node APIarpitsingh11-49/+63
- Modified the GET Data Node API so it returns all the data nodes when xpath set to root "/" - Fragment Repository now returns a collection of Fragment Entities - Instead of returning only the first Fragment Entity now all fragment entities are returned when xpath is set to root - The Fragemnt Entities are further processed to a Collection of Data Nodes. As opposed to singular Data Node in current implementation. - Finally the DataRestController also returns a Collection of Data Nodes when xpath is set to root and valid data is present - Response body changed from JSON object to JSON Array. - Exception handling for invalid xpath and non-existing xpath is now done separately at persistence layer. - Refactored code against CPS-1422 - Deprecated getDataNode method from Service and Persistence layer - Modified V1 of Get Data Node API to use the getDataNodes method and get the first data node from the collection returned. - Modified NCMP to use getDataNodes method - NCMP still does not support multiple data nodes. It retrieves the first data node from the collection returned by getDataNodes Signed-off-by: arpitsingh <as00745003@techmahindra.com> Change-Id: I494a5740a53f65376d135fcb9f1e2e8900a2803e
2023-02-15Bulk delete schemasets in CM handle deregistrationdanielhanrahan5-6/+32
- Batch delete schema sets in single query - Call deleteUnusedYangResourceModules once per batch, not per CM handle - Results for deregistering 10k: 14 mins before; 6 mins after Issue-ID: CPS-1423 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ia3a86a0dc88677323e2f386253a99022a7f02603
2023-02-15Merge "Use getDataNodes (plural version) into NCMP to get CM handles ↵Toine Siebelink5-114/+42
Performance improvement"
2023-02-14Use getDataNodes (plural version) into NCMP to get CM handles Performance ↵seanbeirne5-114/+42
improvement - Code clean-up on existing classes - Removed duplicate code Issue-ID: CPS-1426 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: I3e2ce5b804d7a6e87838490d970cde3cd563f06b
2023-02-09Use getDataNodes (plural) in CmHandle deregistrationdanielhanrahan2-24/+19
Issue-ID: CPS-1426 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I0ad79bf36840cdecc13898e185dc618cedafd529
2023-02-09Merge "Produce subscription create event for subscription-topic: ↵Toine Siebelink4-4/+119
cm-avc-subscription"
2023-02-09Merge "Update CmHandleState on deregistration response"Priyank Maheshwari2-46/+75
2023-02-09Produce subscription create event for subscription-topic: cm-avc-subscriptionsourabh_sourabh4-4/+119
- Groovy Kafka (component level) : Produce subscription create event. Issue-ID: CPS-1394 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ib020c0a4458406925792fc074afd998aa09af158 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-02-08Use getDataNodes (plural version) into NCMP to get CM handlessourabh_sourabh6-12/+225
- Use plural getYangModelCmHandles get YangModelCmHandles by CmHandles in batches. Issue-ID: CPS-1426 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ie175b471bd98b02b572ca4a3ff699d721b5b782a Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-02-07Update CmHandleState on deregistration responsedanielhanrahan2-46/+75
Current implementation incorrectly sets CmHandleState to DELETED for CM handles that were not deleted. - Update CmHandleState to DELETED only for deleted CM handles - Minor test refactoring Issue-ID: CPS-1471 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ibf8b6d2b87d46a7633f0497b065e3d4099851fd6
2023-02-02CmHandle batch deletiondanielhanrahan5-29/+79
- Use plural deleteDataNodes to remove CmHandles in batches, falling back to individual delete on error - Use single deleteDataNode instead of deleteListOrListElement for individual delete Issue-ID: CPS-1464 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: If09f22478df8703290c8fc24aa6fe2a11c90788a
2023-01-31Introduce InstrumentationToineSiebelink3-6/+15
- Add instrumentation related dependency - Added Timed Instrumentation - CPS-Service Crud methods - CPS Yang parsing - NCMP Registration methods - NCMP Events handling - Remove manual Gauge for YanResources Cache as (better!) instrumentation is already built into the 3PP - Sorted dependecies alphabetically (as we used to enforce, to prevent duplicates) - Added ## P E R F O R M A N C E T E S T R E S U L T S ### mini report - (unrelated) test improvement (because of bug that turned out to be invalid) Reviewers: Sourabh,Priyank, Luke Issue-ID: CPS-1457 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I34b20bece2f59488b022b8effa9470704c57be4d
2023-01-27Merge "Define and onboard model for subscription events"Luke Gleeson1-0/+33
2023-01-27Define and onboard model for subscription eventsemaclee1-0/+33
- created new yang model for subscription events; added in ncmp-service - created new container/service to run an init container - added script file to the container - added Dockerfile to be the base image of the init container - health check for CPS added as part of script - removed previous patch modification in setup - changed path of models and dockerfile to main project - latest patch: changed connection to external ports of CPS Issue-ID: CPS-1393 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: I2367020e57b34a669dda93050eeaeede5846304e
2023-01-26NCMP De-Register response payload and status is invalidsourabh_sourabh1-10/+9
-Refactored "DELETING" and "DELETED" update state to avoid wrong response code. Issue-ID: CPS-1463 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I639ba94986c4ffe48d2d42f14f6a6b4e2bd2713e Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>