Age | Commit message (Collapse) | Author | Files | Lines |
|
- Consolidated multiple `if` statements to enhance readability and maintainability.
- Replaced traditional `instanceof` checks followed by casting with the new pattern matching syntax for improved type safety and clarity.
- Removed unnecessary casts and streamlined code in `addYangLeafList` and `addDataNodeFromNormalizedNode` methods.
Issue-ID: CPS-1957
Change-Id: I46696dc184b6b3c3d0fe3a6bd12267a4e0d76193
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
Issue-ID: CPS-2457
Change-Id: Id9a267c587f16f3fb5edb558b33cd0003864ed93
Signed-off-by: seanbeirne <sean.beirne@est.tech>
|
|
Added support to validate JSON/XML data without the need of persisting
it in the databse.
- added "dryRunInQuery" flag as a new query parameter
- added new method as part of CpsDataService layer to perform data
validation
- added new method in yang parser "validateData" to validate
data without persisting it
Issue-ID: CPS-2361
Change-Id: I43dd33cc6120576d0fac606d5c4b0168d107311d
Signed-off-by: Arpit Singh <as00745003@techmahindra.com>
|
|
Checkstyle best practices)"
|
|
- bump cps to 3.5.4-SNAPSHOT
- updated release notes
Issue-ID: CPS-2434
Change-Id: I3d5e6f37711bb29b61b598cc5af57ecfdc35cbba
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
The use of arrays like String[] instead of Collection<String> in
JpaRepository methods is causing a memory leak, most likely due to a
bug in the hypersistence-utils dependency which provides the feature.
Note code using arrays in JDBC (via jdbcTemplate) is not affected.
This patch removes most uses of arrays in Java, except one needed for
FragmentPrefetchRepository using JDBC setArray(), which is safe.
Issue-ID: CPS-2430
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I94f8c3d4c8c32ebe0978c08d3226a196a95bf3b9
|
|
(fighting between IntelliJ and Checkstyle best practices)
- non-2xx responses are processed using web client exceptions
- handle unknown host exception
- upgraded spotbugs (checkstyle and related mvn plugin)
- fixed some small spotbugs due to upgrade
- added commented instructions in docker compose to enable debugging
- added some environment variables for policy executor configuration
- extract out Sleeper in stub service to achieve 100% coverage
- added cause to Policy Executor exceptions where applicable
- ignored (new) spotbug rule about catch NPE because of issue in 3pp
- ignored (new) spotbug rule about \n in string due to multiline string block
Issue-ID: CPS-2412
Change-Id: I6835a73320c436cbeea12cc7a06f15899eec7bf1
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
|
|
Issue-ID: CPS-2432
Change-Id: I53f380a4fe0968d1ec9f1393651c7c43f03d0d95
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
This patch removes the AnchorDataCache from CPS, which is used for
prefix resolution in get/query operations.
As such, Hazelcast is no longer a dependency of CPS, only NCMP.
- Changed PrefixResolver to be more efficient.
- Removed AnchorDataCache and associated classes.
- Moved HazelcastCacheConfig to NCMP.
- Removed Hazelcast dependency from cps-service/pom.xml
This shows good performance improvements in some APIs such as v2 GET
which is nearly 2x faster (also 5x faster including base patch).
Issue-ID: CPS-2417
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I24768469f24e90b70f7a6187faa4f5b3d75777d2
|
|
Instead of looking up same Anchor many times inside a for-loop,
do it once outside the loop.
This greatly improves performance in some cases, such as v2 GET API:
- /cps/api/v2/dataspaces/{dataspace}/anchors/{anchor}/node
Testing shows 3x faster response time.
Issue-ID: CPS-2417
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I80d97d8cc24372eed70626ed840cad985cbe0a4b
|
|
- fixed import order and moved package structure
Issue-ID: CPS-2293
Change-Id: Ie2f9f057f261577054530feee7480850ba4b41e1
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
|
|
|
|
RFC 9144 recommends naming convention for operations that can be performed on any datastore.
The recommended names are:
- create
- remove
- replace
Whereas in CPS Delta feature these operaitions were named:
- add
- remove
- update
So, "add" and "update" operations have been changed to "create" and "replace" respectively.
Issue-ID: CPS-2393
Change-Id: Ie39f5f8ccc91e96cf484ca7fbc833a6be8758054
Signed-off-by: Arpit Singh <as00745003@techmahindra.com>
|
|
- remove duplicate dependencies from cps-service pom
- remove unused spring security dependency from cps-application pom
Issue-ID: CPS-2390
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Id49705e8790df7d7e98d80fa0ccb639eb4f1995f
|
|
- bump CPS to 3.5.3-SNAPSHOT
- updated the release notes and prepared for the next release
Issue-ID: CPS-2374
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I60ea5f5864f5818d1ed5078e375cf07b8d713dde
|
|
and dataProducerIdentifier
- Created a new repo. service for fragment table that executes a native
sql query to find first ready cm handle id based on moduleset tag and
then returns list of module references.
- Exposed a new interface into module service that is used by
module sync service to get list of midule refs by module set tag.
Issue-ID: CPS-2353
Change-Id: I438dbd1ed37c1ff4e15f792e93a095aa604120bc
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
Issue-ID: CPS-2287
Change-Id: Ibb7ffb66ccbb03703266132c6d5c2eade0e7cb4a
Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
|
|
- Make the response message more informative and cleaner in case of data
validation failure.
- Updated message body will not contain the entire jsonData as part of
response sent back to the user
Issue-ID: CPS-2306
Change-Id: I28aab1450779af98ccdd11701e78bdfcdbc18cf0
Signed-off-by: Arpit Singh <as00745003@techmahindra.com>
|
|
- New groovy test is written to validate if dmi service url is encoded
correctly.
Issue-ID: CPS-2317
Change-Id: I048bf37dd3ba4f37df7dace927f55bf8dd899922
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
Issue-ID: CPS-2282
Change-Id: Ibb7ffb65ccbb03703266712c6d5c2eade0e7ab4b
Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
|
|
- bump CPS to 3.5.2-SNAPSHOT
- updated the release notes and prepared for the next release
Issue-ID: CPS-2318
Change-Id: I584faf6218e60ad62e32ef8c3cb0deb4047149a2
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
There is an issue in a method deleteDataNodes(dataspace, anchors)
where it doesn't send data update events. This is because it fetches
anchors using a method getAnchors(dataspace, schemaSetNames), when it
needs to fetch anchors by name: getAnchors(dataspace, anchorNames)
Changes:
- Rename getAnchors method using schemasets to getAnchorsBySchemaSetNames
- Add a method getAnchors(dataspace, anchorNames)
- Update test of deleteDataNodes method using getAnchors so it checks
that data update events are sent
Issue-ID: CPS-2254
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I55fe853f0a9278a66a5724bf4cf2723b0e2fbc8b
|
|
- bump cps version to 3.5.1-SNAPSHOT
- updated release notes to make it ready for the next release
Issue-ID: CPS-2283
Change-Id: I242cae7c95a87c1a9e225cce3eb7b36097f1e5ba
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- Defined a constant instead of duplicating literal "No data nodes 4 times.
Issue-ID: CPS-478
Change-Id: I2b980a228217e85424342d4c2b9e97c5cfa618d1
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
- Second API to get Delta between an anchor and JSON payload
- added new API getDeltaByDataspaceAnchorAndPayload
- added controller and service layer methods
getDeltaByDataspaceAnchorAndPayload
- Core Delta algorithm remains same as the first API.
getDeltaByDataspaceAnchorAndPayload will call getDeltaBetweenDataNodes
Issue-ID: CPS-1836
Signed-off-by: Arpit Singh <as00745003@techmahindra.com>
Change-Id: Id74cd930ce48e5cb414aa62c5381b79675788a37
|
|
Issue-ID: CPS-2071
Change-Id: Ibe7f59fbfcbb03703626132c6d5c2afde0e7ab4b
Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
|
|
- bump cps to 3.5.0-SNAPSHOT
Issue-ID: CPS-2228
Change-Id: I8a6d7e702b557d5b90dd384bbe429de4958ef77f
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- bumping CPS to 3.4.10-SNAPSHOT version
Issue-ID: CPS-2221
Change-Id: I8513582791078762bfb9d828966028c233e031db
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- introduced a parameter to control the cps core change event
notifications. we should be able to disable these notifications
without affecting other notification flows.
- fixed the LayeredArchitectureTest as we are accessing the Anchor model
in the events package now.
Issue-ID: CPS-2213
Change-Id: Id875925bc14de1cc6e8fa3193c0df470e09fe43f
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- Using the DateTimeUtility to parse the passed OffsetDateTime and using
it for conversion to string
- Moving to actual src/main/java from test side as it is to be used in
the prod code as well and only keeping the methods in use.
- Added test to fix the coverage issue
Issue-ID: CPS-2211
Change-Id: I2b4325bb77a6da7fd470986b1da293f455650375
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
|
|
- bump cps to 3.4.9-SNAPSHOT
- also updated the release notes
Issue-ID: CPS-2205
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ifd7feb413baac30e3cbbdf2aeaac5fbb5ae2e463
|
|
Add notification support using cloud events
Issue-ID:CPS-2068
Change-Id: I56c34400dc73c71b936a51260efd240223babacd
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
|
|
This greatly improves performance of module searches by eliminating
unneeded SQL queries via Hibernate lazy fetching.
Issue-ID: CPS-2190
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ie9e65017d0027366456f1741cc37b10679317b25
|
|
- bump cps to 3.4.8-SNAPSHOT
- also updated the release notes
Issue-ID: CPS-2168
Change-Id: Iee7f1e2febbf28b0d5a2855d3128d9eb8bb3c490
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- uplifted spring boot from 3.1.2 to 3.2.4
- removed redundant dependencies
- upgraded relevant dependencies
- use of @Bean(some_name) is give a specific bean name
- using @Bean(some_name) with @Qualifier so on the injection point to specify which bean to actually inject, this is used as we deal with multiple beans of the same type.
Issue-ID: CPS-2101
Change-Id: I64d5bf567b9eb03fb39034a46528d0160b332715
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
|
|
Currently Hazelcast is configured to have 3 synchronous backups
and 3 asynchronous backups. These are separate, meaning there will
be 7 copies in the cluster (1 original + 3 sync + 3 async backups).
Even if only 1 instance of CPS/NCMP is running, it will have 7 copies
in memory.
Given that CPS/NCMP is typically only deployed using 1 or 2 instances,
the settings are changed to 1 synchronous backup (same as Hazelcast's
default configuration). This change has been tested and shown to reduce
heap usage by around 100MB during 20K CM-handle registration.
Issue-ID: CPS-2146
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I4a5f6d83bc35e2c13cfb32002e38dc365da34c8e
|
|
- bump cps to 3.4.7-snapshot
- updated the relese notes
Issue-ID: CPS-2135
Change-Id: Ib166ebae2e3de9a727b3d0d4d21832c8858f4108
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- reverting back to spring 3.1.2
- manual changes to revert as other apps not fully ready for the
delivery
Issue-ID: CPS-2133
Change-Id: I670b67916fa4a5d4e5bced6548b7fcd5ee12e855
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- bumping CPS to 3.4.6-SNAPSHOT
- updated the release notes
Issue-ID: CPS-2124
Change-Id: Id28af9340da9c1ce118b2122e97b8717860c7932
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
|
|
- bump CPS to 3.4.5-SNAPSHOT and update the docs
Issue-ID: CPS-2120
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ia2ea81b40ec19b87d3b25359fbb25ffdcc3285dd
|
|
- Upgraded hypersistence-utils-hibernate-60 to hypersistence-utils-hibernate-63
- Introduced @Qualifier annotations where needed
Issue-ID: CPS-2101
Change-Id: I8303592ed91584deb6ca5cd4e49800210b6ea989
Signed-off-by: waqas.ikram <waqas.ikram@est.tech>
|
|
YANG specifies two ways that leaf-lists can be ordered:
- ordered-by user: original order in JSON is preserved
- ordered-by system (default): it is up to the system how to order
For leaf-lists to preserve same order as the JSON, the Yang module
must specify 'ordered-by user'. To ensure consistent behaviour even
when system ordering is used, the leaf-list is sorted during parsing.
- Add 'ordered-by user' to authors field in bookstore.yang
- Sort leaf-list during parsing when using 'ordered-by system'
- Add new tests to verify ordering
Issue-ID: CPS-2057
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I6ab688ec2fa4a22182e853d1a8b26642f278c40a
|
|
|
|
- bump CPS to 3.4.4-SNAPSHOT and update the docs
Issue-ID: CPS-2077
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I1658c83642c8e64903f4bc03b74b6f5726d0227e
|
|
- changed sequence of delete schema set by cascade to remove unused yang
resource modules at last.
Issue-ID: CPS-2031
Change-Id: Icefc075165231cc4b9b170e04a2d12af645529e9
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
- Add new module: bookstore-types
- Import the new module from stores module
- Change integration testwares to comply with
the new module
- Add new integration test for retrieving module
definition
Issue-ID: CPS-1135
Change-Id: Ib51c998ceeab50d3fcea212ed55c8ab50ca09257
Signed-off-by: halil.cakal <halil.cakal@est.tech>
|
|
- add query parameters: module-name and revision to OpenAPI
- extend the controller method to hande the new parameters
- add the new method stack to the service layer
- extend the SQL query to support the new parameters
- add unit and integration testwares
Issue-ID: CPS-1135
Change-Id: I089ad2ad71effb58ac0ba809e9f441d6cdb59c4f
Signed-off-by: halil.cakal <halil.cakal@est.tech>
|
|
- Moving cloud events dependencies to the cps-service module instead of
cps-ncmp-service
- Testware has moved and new tests also introduced
- EventsPublisher also moved
Issue-ID: CPS-2040
Change-Id: Ibafb15e7e9efbdbe1e00e2b4f0da820bbcead004
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|