Age | Commit message (Collapse) | Author | Files | Lines |
|
Adding PdpGroup healthcheck REST API in PAP to return the health status
of all the Pdps registered with this PAP instance. The healthcheck
status will be based on the regular heartbeat coming from the pdps.
Change-Id: Ia0f1603b513bf62ce1df3058427dc6ccaf179cb3
Issue-ID: POLICY-1770
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
Replace string concatenation with "{}" place-holders in logging
statements.
Refactored PdpStatusMessageHandler and PdpGroupStateChangeProvider
to extract common/duplicate code block into PdpMessageGenerator.
Refactored selectPdpGroupsForRegistration() to reduce "cyclomatic complexity";
extracted selectPdpSubGroupsForRegistration from it.
Issue-ID: POLICY-1791
Signed-off-by: jrh3 <jrh3@att.com>
Change-Id: Ia0ebc1cf41cd2fa288130b4a58614a4983f47f8b
Signed-off-by: jrh3 <jrh3@att.com>
|
|
Added heart beat interval to the PDP-UPDATE message sent in response
to a heart beat message received from a PDP.
Added timers to detect missing heart beats and remove the PDP from
the DB - PdpTracker.
Modified current heart beat listener to update PdpTracker when a
heart beat is received.
Allow 3 missed heart beats instead of 2.
Change-Id: I81621fefbe494e0c4d6f0b9767b00b2a9dd398d8
Issue-ID: POLICY-1795
Signed-off-by: jrh3 <jrh3@att.com>
|
|
Modified the code to undeploy all versions of a policy if the
version is not specified.
Change-Id: Ic3815733b918e1cff8f381d54bceb710a35319b7
Issue-ID: POLICY-1782
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
PAP should not allow multiple versions of a policy to be deployed
to the same PDP. Modified the code to reject deployment requests
where a different version of the policy is already deployed. This
impacts both the PDP-Group-Deploy and the Simple-Deploy REST APIs.
Change-Id: I586b764951c20228d0d80ec8326869215e970fdf
Issue-ID: POLICY-1785
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
When a subgroup is deleted via the PDP Group create/update API,
any PDPs in the subgroup should have all of its policies undeployed.
In the process, refactored addOrUpdateSubGroups() out of updateGroup().
Change-Id: I0750802bfb133a655e38493a868744b512ca3fb4
Issue-ID: POLICY-1803
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Need this for the 5G OOF PCI Use Case.
Issue-ID: POLICY-1776
Change-Id: I86758174840d376d6003f5200f0deeb72c3e01d9
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
The PAP Undeploy CSIT was failing, because it was returning 400.
The code was counting PDP UPDATE requests to determine whether or
not the policy had been found. However, if a subgroup currently
has no PDPs assigned (as is the case with the CSIT), then there
will be no PDP UPDATEs, thus it will think that the policy was
not found and return 400. Modified the code to count updates to
the DB instead.
Change-Id: I80cdcc738e07c418e0a7184284e7a228e3a6014d
Issue-ID: POLICY-1758
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
When multiple policies are deployed to the same group in a single
request, and the policies have different policy types, only the
changes associated with the last policy are kept. Updated the
policy type lookup to use cached groups, when available.
This still needs a junit to verify the fix, but that can come
later.
Also added more logging.
Change-Id: Ieaf866da504b167c884bf53f88aa8cb9e9b5e32a
Issue-ID: POLICY-1761
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
When undeploying a policy, if a policy's type is found in
a group, but the policy is not, then PAP returns 200. It
should return an error instead.
Change-Id: I88273fdbd5d49095e8248ab9267cccc529af0ae0
Issue-ID: POLICY-1758
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Changing PAP initial db data to bring all the xacml supportedPolicyTypes
in one PdpGroup.
Change-Id: I9a0788c788bab470109b0f09fb631e7fbb90042e
Issue-ID: POLICY-1723
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
When a response is received by PAP from a PDP, the associated timer
(and listener) are not being cancelled. As a result, when the timer
later expired, PAP was re-sending the request. Modified the code to fix
this.
Change-Id: Id63f76622c01d286c169b618f8369b849ff31085
Issue-ID: POLICY-1715
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
1) Adding algorithm for improving Pdp registration. The flow is:
When a new Pdp comes for registration, PAP will shortlist a list of
PdpGroups based on the supportedPolicyTypes reported by PdpStatus
message and the supportedPolicyTypes in the PdpSubGroup.
Then PAP will find the PdpGroup which needs the Pdp most in two ways:
1) If there is a subgroup with no Pdp's then that takes the priority.
2) Otherwise the Pdp is allocated to the PdpGroup with highest
difference value of desiredInstanceCount - currentInstanceCount.
2) Changing the preconfigured TosaPolicyType for apex to avoid
interference with legacy operational policies of drools.
Change-Id: I77584c3c030bc27903c11689acaca33148e27e3c
Issue-ID: POLICY-1630
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
Extracted common code from "delete" controller.
Extracted common code from "deploy" controller.
Not sure if this will actually fix the sonar issue or not. If it's
really complaining about the code, then this should fix it. On
the other hand, if it's complaining about the annotations, then
I don't think there's a way around it.
Change-Id: I7c68393f3fc1b9719987d850582bd8ed335b9663
Issue-ID: POLICY-1711
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
When a group is created, PAP should verify that the "supported types"
exist in the DB.
Address potential sonar issue.
Address potential sonar issue in similar block of code.
Change-Id: Ib830550bc37d4ebe42c8782f3f874e463f3f51c2
Issue-ID: POLICY-1688
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Return 404 instead of 500 when items are not found. Bubble up other
HTTP error codes instead of changing them all to 500.
Change-Id: Ib614bb83f28cfb1ce2384679398f0a45058fc455
Issue-ID: POLICY-1686
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
Added test that checks sunny day scenarios for the PAP REST API.
Uses real PAP components for everything except DMaaP. PDPs are
simulated.
Change-Id: If2adc3b1523b477c3efd3eb83fb7a7b04f40fa24
Issue-ID: POLICY-1670
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
UpdateReq throws NPE if the policy list in the request or the
response is null.
Change-Id: I0d71d6ad4cc9b96315c3b3ba89af8e4d8f3f94e6
Issue-ID: POLICY-1669
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Add configurtion files that work with the DMaaP simulator.
Issue-ID: POLICY-1643
Change-Id: I8e387163ab190b9610669029720ccf7b9989cfdf
Signed-off-by: liamfallon <liam.fallon@est.tech>
|
|
Some required fields were missing from the subgroups in the
inital DB. Also added code to validate what is initially loaded into
the DB.
Change-Id: Iffa56a5a0dee833691d1bb7859b075c3b4d86595
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
|
|
While testing, saw NPE when PdpModifyRequestMap attempted to
create a DAO provider. Forgot to add the DAO factory to the
list of parameters passed to the request map constructor.
Change-Id: I72bc63543bc58b11c3ef70f50342e72a24a8b653
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
Modified the junit tests to destroy the servlet factory before each
test to prevent previous configurations from interfering with
new configurations.
Change-Id: I558269e89af271bee13cb9db94eadbcbf08f14d4
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Change-Id: I389f61f9311bba35115a174c8526f897c98a3364
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Added another unused parameter from RequestImpl to a logging message.
Removed "throws PfModelException" from ProviderBase.
Shorten lambda function in SessionData.
Change-Id: I5c0ba99bd92ac94bdeacd2398fbc65f081ef85ad
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Moved methods into nested class of PdpModifyRequestMap. Note: they
will have to be moved back out when the broadcast capability is
added.
Removed extra "continue" from Publisher.
Rather than remove unused parameters and cause significant clutter
to the code, chose to use the parameters in a logger call for RequestImpl.
Removed unnecessary cast from UpdateReq.
Use version constant in PapRestControllerV1.
Log exception in PdpGroupQueryControllerV1.
Log exception in PdpGroupStateChangeControllerV1.
Shortened functional in PdpGroupDeleteProvider.
Removed unnecessary type parameters from PdpGroupDeployProvider.
Removed unneeded parameter and exception from ProviderBase.
Extracted common string from Main.
Shorted functionals in PapActivator.
Changed uses of getCanonicalName() to getName(); the former only has
limited use, while the latter is typically what is wanted and is
actually required whenever forClass(name) is used.
Fix junit tests broken by rename of ToscaPolicy version from
"typeVersion" to "type_version".
Change-Id: Ia00e1b3541c9e25b196a951e45681f67aa7f1bfe
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
The deploy/undeploy APIs used by CLAMP only pass the major number
when specifying a policy-version. Modified the code to handle
policy-versions of the form, major or major.minor.
Change-Id: I3251df162984f287bd1430b8e46da675b4c265ee
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Added code to support PDP group create/update & delete REST API calls.
The create/update request can also be used to deploy/undeploy policies.
It is assumed that the create/update request specifies a valid
list of supported policy types for each subgroup (i.e., PDP type).
Updated due to elimination of "version" from group in policy/models.
Added/updated junits.
Change-Id: I1916d9b17dfd5f12129c6f6a2fcf54e706662c10
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified the code so that, when a PDP is unable to fulfill a request,
an UPDATE is sent to the PDP with group=null and subgroup=null.
Also made updates to eliminate group version due to changes in
policy/models.
Change-Id: I9400ef5f8c365f492113a5b592b9ee6b7218756e
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
1) Adding code for initial PdpGroup/Subgroup creation.
2) Adding db configuration
3) Updated code as per change in policy/models
Change-Id: If37870925001b333e0537e364eecb266c351cf5a
Issue-ID: POLICY-1635
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
Modified code to update a PdpGroup, adding or removing policies, without
changing the version number.
Change-Id: I10031dff5f6d9c7e568605a8d73af6fe3c740901
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Several junit tests were broken when the json-encoded names were
changed for the fields within ToscaPolicyIdentifierOptVersion. This
review fixes those junit tests.
Change-Id: I963190b7792a2ebc3165ef04c74f4671c41c37da
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
The code to disable a PDP used the group name, extracted from a
prior PdpUpdate request, to identify the group from which the PDP
should be removed. This is not sufficient, as the requests tracker
may have never seen an update request. Therefore, the code was
modified to simply remove the PDP from all active groups. Also
made removeFromGroups(pdpName) public so that it can be used by
other PAP code.
Change-Id: Iedec88cb23e586944563dcc5ac82ff3b9f122f8c
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
|
|
|
|
Change-Id: Id744a7d49b9fb608ba3379dd43bcbd6a0297891f
Issue-ID: POLICY-1541
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
Change-Id: If3f01a6e92bef9eb889066115537f599e6b09229
Issue-ID: POLICY-1541
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Change-Id: I0c11b9704960f1b0b4d4c099a1b582ee259524e0
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Change-Id: I547f8a520d84d3593f90256fa91fc964c1d1e83c
Issue-ID: POLICY-1443
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
Refactored to facilitate the addition of broadcast requests in the
future.
Added disable-PDP capability.
Updated some comments.
Add junit tests.
Only treat null group as broadcast - empty strings are not broadcasts.
Added more logging.
Change-Id: I6f62b8755d20769c333f06752e9d63ac9ed83b57
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
1) Fixing review comments from previous review.
2) Adding updateLock to registration handler & state change provider.
Change-Id: I9f6e0de1f58190e490b28965c84a3a0c7aa90486
Issue-ID: POLICY-1443
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
1) Adding implementation of PdpGroup Query & State change providers for
PAP REST API.
2) Adding support for unregistering Pdp after recieving TERMINATED state
in PdpStatus message.
3) Updating PdpStatusMessageHandler with new filter changes in models.
4) Removing updatePdpStatistics method as we will implement db provider
and REST provider in next release.
5) Fixing few bugs found during Pdp registration testing.
6) Updating the existing test cases to work.
7) Will be adding more exhaustive test cases in another review.
Change-Id: I7aa20bf422671fdc1e06dab5e90aef4ee19a6a02
Issue-ID: POLICY-1541
Signed-off-by: ramverma <ram.krishna.verma@est.tech>
|
|
|
|
PdpGroupFilter now supports filtering by latest version. Removed a
TODO from PdpStatusMessageHandler and added the filter parameter.
Change-Id: I67983397b616d8e289c4dc79d912bb4cf26e97ae
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
If an exception is thrown in the middle of processing policies, it's
possible for the DB to reflect a partial deployment. This change
queues the DB changes so that they're all made at once, after all
policies have been processed.
Extracted sort() into a common place.
Corrected some comments.
Simplified the list retrieval in the junits since all DB creates and
updates are now batched together into one operation each.
Change-Id: I835175fc16d4042c741d36ec69caa8f603d46d5a
Issue-ID: POLICY-1542
Signed-off-by: Jim Hahn <jrh3@att.com>
|