Age | Commit message (Collapse) | Author | Files | Lines |
|
The XACML github was released with a new method to allow
context factories and PIP engines to release any handles
before releasing the PDP engine. This review includes
that artifact and adds tests to support it.
In addition, added more tests to get code coverage over
90% for both PIPs in ONAP.
Some cleanup in the Matchable types based on last review.
Issue-ID: POLICY-2242
Change-Id: I312f06380ff4d2e16bcfd25b6d1f36ce5dd030e6
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
This solution is much cleaner than what is in StdMatchableTranslator.
Over 90% code coverage on it - utilizes a callback to retrieve DataType
and PolicyTypes. Support for missing timestamp TOSCA type. Also can
do a better job differentiating between a property contained in the policy
vs a schema.
Changed StdMatchableTranslator to utilize these classes. And removed the
old spaghetti.
Added some JUnit coverage for ToscaPolicyTranslatorUtils.
Removed duplicate code in the XACML Native Exception classes.
Issue-ID: POLICY-2242
Change-Id: I18f898d9e65f6da28e3b27517d40f8d389de18a0
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Adds support for PolicySetType specifically for Native policies. When/If
the other applications change to support they can easily do so.
Adding some more code coverage for Native application and translator.
Issue-ID: POLICY-2433
Change-Id: I463ca9f04928d759624a2176598b463057d386bd
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Fix spelling error and add code cover >95% for the
XacmlPolicyUtils.
Issue-ID: POLICY-2242
Change-Id: I21f239e6bd42073ff84883d04f2b8bee1466b8e0
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Throw exceptions when requests cannot be created and return
error information back. Consolidated some code to avoid sonar
duplication issues.
Companion review to https://gerrit.onap.org/r/c/policy/models/+/103548
Issue-ID: POLICY-2242
Change-Id: Ic873af933dab82e3aeef6335f55939666be20385
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
These did not show up locally - sonarqube must have a new
version or rules to pick these up.
Issue-ID: POLICY-2242
Change-Id: I3df5aee84f696cde6b07c68913bbd55e95c8ba3b
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Removed duplicate code from operations history classes.
added code coverage to other classes.
cleared sonar in main for args
Issue-ID: POLICY-2242
Change-Id: Ief548c96a180c132a3f17681d9cbc018c62e42ac
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Cleaned up some code to remove unnecessary branches. Add more
test cases specifically for query parameters.
Coverage should be above 90% for this repo.
Issue-ID: POLICY-2242
Change-Id: I20a75aacd75f9b8c87abb47e88b81ab8f2d30626
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Fix a NPE bug and add more code coverage.
Also is missing returning of context details for subscriber policies.
This code is a bit ad-hoc and there is a separate JIRA POLICY-2147 to
support re-factoring this codebase.
Added scanning for advice to be returned. For optimization, because of
the need for some changes in XACML github dependency, we are stuck with
a little narly code to get it to fully work. POLICY-2417 is created to
address this in Guilen.
Upgraded to released XACML artifact - this has been tested locally for
a few weeks with naming, guard and this optimzation code. It removed
Jackson in lieu of Json, cleaned up some security fixes, upgraded
dependencies, and added more code coverage.
Issue-ID: POLICY-2066
Change-Id: I3cae99de265c815200ec2ce71e471338772bdb5b
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Because the new TOSCA compliant policy types support required
fields, we can simplify the guard translator to utilize Match
in the target vs the previous complicated Condition usage.
Added test coverage to bump above 90% specifically for the
guard and coordination code.
Added a sonar exclusion for the test module.
Issue-ID: POLICY-2244
Change-Id: Ia90d117bd7b86d28a2268fd5ab8315dce7bf0c12
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
With the new changes to models/api, the full policy template will
be retrieved along with inherited policy types and datatypes.
Changed api caller to return tosca template instead of individual
policy type so all policy types and data types are available.
Changed stdmatchabletranslator to be able to flexibly go deep with
list/map of datatypes of attributes. NOTE: This should be re-factored
at a later date as its a bit messy.
The naming application was used to test this code, but it was determined
by the CCSDK team that they will not do filtering this release. Instead,
switched to combined results policy type to return the full policy type.
Issue-ID: POLICY-1740
Change-Id: Ieb4e46e7fb2c639a1155be3bc07f5587c4f7b09a
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Adding support for a preliminary request to pull subscriber details.
The returned decision adds scope attributes for the original request.
Fixed some checkstyle issues due to new checkstyle requirements.
Issue-ID: POLICY-2066
Change-Id: Ief02d896ce33e4864bb20e9185b0d0f5eb254bfd
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Requires changes to StdMatchableTranslator to go deeper when
searching for matchable attributes.
NOTE: will re-visit the StdMatchableTranslator at a later date
in order to support more robust Policy Types. And document best
practices for defining matchables.
Issue-ID: POLICY-1740
Change-Id: I291cf1c2e6eba0a677a3312dd11f0e56178a805b
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Missing assertions in JUnit test cases.
Use replace vs replaceAll
Swapping arguments
Issue-ID: POLICY-2079
Change-Id: I5accd462eab3d4f6b3321e375d4ba1084caf4b8c
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
|
|
Needed to add more obligations, which make it easier to
scan through obligations and be able to pull information
about the policy.
Adding weight as an obligation for Optimization policies in
order to implement "closest match" algorithm.
Moved Obligation to a support class.
Added JUnit code coverage on the translator classes.
Split some methods up to reduce complexity via sonar.
Issue-ID: POLICY-2066
Change-Id: Ibb13d2dc0a63ab2a6d585b0697a0c1d129fa8f7b
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Issue-ID: POLICY-2175
Change-Id: I32d2fe78846f58d6e700100dd523732817f1f04d
Signed-off-by: Ali Hockla <ah999m@att.com>
|
|
Fixed a couple of sonar issues - log exception and do not
nest more 3 if-else-try.
Cleaned up the JUnit test to make debugging a bit easier.
Added more examples for testing optimization tests.
Moved the target back into the Policy and kept the Condition
on the Rule. Works exactly the same, just a bit cleaner and
one less rule to deal with.
Issue-ID: POLICY-2066
Change-Id: Ife28dc2ce959dcf1fb8ca72061ebc5dca862a7f4
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
* StdBaseTranslator added helpful support methods and
can now add obligations to either rule, policy or policy sets.
* StdMatchablePolicyRequest improved to support optional
policy-type as part of the request to refine the output results.
* Added more tests to ensure that the decision is returning the
appropriate results.
* Added more Javadoc for code.
* Added some sonar fix for either log or throw exception.
Issue-ID: POLICY-2066
Change-Id: I90d6d90c2cdbb627e96cfce1d2632b2439a1e477
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Turns out cyclomatic complexity is there in one method.
The other JUnits in the applications cover the rest of
the class, when time permits I will add that in there
for completeness.
Issue-ID: POLICY-2066
Change-Id: I31fd43625883bd569d4078bbd684554f6f3fbf53
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
There is duplicate code for some common translation of policy
decision responses and for scanning obligations.
Removed some TODO items (left others because I want to look
at them more closely).
Stored System.lineSeparator into a static var so that I can
remove some unnecessary ifs. There's still one left that I
am not worried about.
Gson as a static variable.
Issue-ID: POLICY-2066
Change-Id: I9c8162d5ad1c5f884be347dd94631fa74ca76f85
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Now that yaml is supported, use those policies that are
stored in the models-examples that are preloaded into the
api.
Fixed a minor checkstyle issue. Not sure why it was missed.
Issue-ID: POLICY-2066
Change-Id: I2f4384a310bfa818555de5dacb477daf82fac6de
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
decision results
Issue-ID: POLICY-2126
Change-Id: I18d50a8746ede792ec9507ab98125383c5914ba1
Signed-off-by: HOCKLA <ah999m@att.com>
|
|
Either log or re-throw exception
Refactor to not nest more than 3 statements
Refactor to throw at most one exception
Move variable to comply with Java Code conventions
String literal on LHS
Issue-ID: POLICY-2079
Change-Id: Iac33623ef4694cf38c4a69c8f0b9040d8439998e
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Issue-ID: POLICY-2090
Change-Id: Id688e305f878f56e374e6bd9047d9d6c75fbe0c6
Signed-off-by: Ali Hockla <ah999m@att.com>
|
|
Upgrade to models fix for derivedFrom() append of 0.0.0
And some sonar fixes for:
Exceptions should be either logged or rethrown but not both
Preconditions" and logging arguments should not require evaluation
Reduced cognitive complexity
Issue-ID: POLICY-2079
Change-Id: Ied8630020e8a737c33b1484db953df133c89398f
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Also modified code to use StandardYamlCoder.
Change-Id: I0596c8b054339ac68ef8c4250cd25b9ff88d47e4
Issue-ID: POLICY-2085
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Utilize's Jim's helper class to pull from API policy types
definitions so that Xacml PDP can determine which properties
are "matchable".
Override initialize to set translator parameters.
Utilize the metadata section of ToscaProperties to store
the matchable field.
Updated Matchable Request to be dynamic with respect to the
incoming resource attributes.
Stored the policy types as JSON.
Issue-ID: POLICY-1899
Change-Id: Icff3605495b0a34ebfcdfa54346095ce2d8468a4
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Added a class to retrieve a policy type from the policy-api.
Updated property files to include parameters that are needed
to configure it.
Updates per review comments:
- change PolicyApi to PolicyApiCaller
- use HttpClientFactory
- removed superfluous constructors from exception classes
- changed parameters to use RestServerParameters instead of BusTopicParams
Change-Id: I8aad6ca5a733c8ad9cc983496e745ebe7400dd17
Issue-ID: POLICY-1911
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Also removed unused methods.
Also extracted constants.
Change-Id: I8d2cff05a365f145f2080369e9ea52d08be7e508
Issue-ID: POLICY-1772
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Change-Id: I9b59dcd27705e40c424b6a76420e0395adbe44bb
Issue-ID: POLICY-1772
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Wrong attribute id was being used. Added info logging statement
to assist in debugging. Added JUnit to support this.
Issue-ID: POLICY-1843
Change-Id: I11d83574f91751804a45281d2e0c9cd3150e30eb
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Added code to decode password and set property
Change-Id: Ied806fcceeaa44d53ca39af636da620fb824e41d
Issue-ID: POLICY-1760
Signed-off-by: Michael Mokry <michael.mokry@att.com>
|
|
A lot of debug should really be info for logs. To assist
with debugging but also really need to be there for auditing.
Issue-ID: POLICY-1730
Change-Id: I5c41e056775c24797d257504e9c6495fa3127e45
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
When scanning obligation, should return a map of
policy id as dictionary.
Issue-ID: POLICY-1735
Change-Id: I46375d761e04c3cc8bd2d428a9d843b3f24478ca
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Refactored xacml-pdp to eliminate a number of static fields.
Modified junit tests to allocate new ports for each test.
Also modified XacmlPolicyUtilsTest to convert path names to match
the file system so that the junit will work in OSs other than
linux.
Replaced logback.xml with a copy of the one from PAP to resolve
some issues.
Don't print entire message when discarding, as each PDP receives
messages for ALL PDPs.
Remove shutdown class from Main - just invoke this.shutdown()
directly.
Added additional comments to CommonRest. Also modified port test
parameters.
Change-Id: Id8bf7216cdcb59a1a2cb4cb957fa44f640315cfe
Issue-ID: POLICY-1645
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
1. fixed nullpointer blocker issue in CoordinationGuardTranslator.java
2. fixed "log or rethrow exception" critical issue
3. throw exceptions instead of returning null values
Change-Id: I2d567fe566c6f761ec2699016c4a868f203c9a01
Issue-ID: POLICY-1451
Signed-off-by: Michael Mokry <michael.mokry@att.com>
Signed-off-by: Joshua Reich <jreich@research.att.com>
|
|
* Adding in the statistics for decisions and errors.
* Cleaned up sonar issues and added code coverage.
* Sped up JUnit tests
* Fix JUnit issues with not finding application path
* Fix TestDecision not finding persistence.xml
* Fix for lingering statistics from previous runs. That
needs to be addressed at a later time.
* Changed persistence to use properties for configuration
of database rather than hard coding the persistence.xml
* Fix for Josh's comment to use else-if
* Changed to use apache Pair
* Added blacklist guard policy
Issue-ID: POLICY-1440
Change-Id: I56af8c3dcc82463f7381f1eaea7f1440b76200bd
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
|
|
Refactor code to support multiple pip engines.
Add pip engine for outcome.
Modify LegacyGuardTranslator to use coordination translator's
convertPolicy function when processing coordination guard.
This version of convertPolicy intentionally uses string
replacement on template-like xacml coordination guard to
enable future support for API-based creation of new coordination
guard types.
Bug fixes and code cleanup.
* Unused imports, sonar problems.
* Consolidation of getAttribute method
* Only use TypedQuery for Pips
Issue-ID: POLICY-1471
Change-Id: I4e9365b7f23bee96cf438dad44feda97c65f6ecc
Signed-off-by: Joshua Reich <jreich@research.att.com>
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Added changes to handle incoming udpate for deploying or undeploying the
policies by comparing both sets. STill need to add support for removing
the policies and getting the deployed ToscaPolicyIdentifiers for
PdpStatus response.
* PLD - added functionality to unload policies in the applications and
* PLD - added map of loaded policies
* Mike - made change to address Jim's and Joshua's comments
* Mike - Made change to use mapLoadedPolicies to get deployed policies
from the applications
* Mike - made change to assembly.xml to add support for apps directory.
Change-Id: If7d119197171b68b905b7fd0f2b5be6cf6f609e7
Issue-ID: POLICY-1451
Signed-off-by: Michael Mokry <michael.mokry@att.com>
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
1. Added PDPUpdate listener
2. Added PDPUpdate Publisher
3. Added code to handle PdpUpdate messages and load policies being
deployed
4. Modified Activator to register listener
5. Provided placeholder code to get policies from pdpx for return
PdpStatus response to the PAP
6. Other minor modifications
7. Fix XacmlPdpApplicationManager to only load policy if supports
policy type.
8. Checkstyle fixes
9. Updated applications to support loadPolicy(ToscaPolicy) and
all the translators, JUnit tests.
10. Consolidated some duplicate code in the applications. Can probably
do more in that area.
11. Fixed bug in Properties not really having a copy constructor.
Change-Id: Ic29ad426061cbdb79c1339314667bb8ff8decb88
Issue-ID: POLICY-1451
Signed-off-by: Michael Mokry <michael.mokry@att.com>
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Tests a decision upon startup. This also updates the use of
ToscaPolicyTypeIdentifier for all the applications.
Very basic packaging for applications and their properties.
Added cleaning of unused imports to remove sonar issues.
Added production persistence.xml file to guard application.
Not sure if we need a copy in the application/common resource
directory.
Issue-ID: POLICY-1440
Change-Id: If96eef5a9e0a7c6cc5461c0bdb6f0cd708cc41bb
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Adding the PIP support into the translator to setup the count
attribute as an attribute generated by PIP and not sent by
calling application.
Added JUnit for OperationsHistoryPipEngine.
Issue-ID: POLICY-1471
Change-Id: I71773ee8ea0e6c02873506d973a604899383d4b5
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Added some fixes from previous review and some debugging
for the JUnits. The merge failed in the JUnits and I
could not see why. I think the wrong request was sent, but
I'm not sure why the JUnits woulnd't fail locally or in
the verify job. We need to do a lot of testing with these
policy translations.
Also fixed the guard policies to use correct VF Module Create
recipe.
Issue-ID: POLICY-1273
Change-Id: I813bcca92436d356c43da5613eab7ba7746a4e3d
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Created Optimization application and created a translator
for it. The translator makes an assumption that OOF wants
to query on policyScope and policyType properties.
Rearranged some of the test code for re-usability.
Guard policies are now creating for frequency limiter
and min max. Probably could use some clean up.
Upgraded to xacml 2.0.1 to include a fix for handling
null attribute values.
Added some code to test missing values.
Issue-ID: POLICY-1273
Change-Id: Ia3dbfa992bbe0cbb5aa294c38aa2aff430a3230a
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Instead of applications implementing the converter, use a
protected abstract class that implements common code.
Newer applications could re-use existing application, and
shared code can be put into the base translator class.
Fixed sonar issue and changed guard xml.
Removed Converter and made translator into an implementation
class that is an object in the Application Provider.
Issue-ID: POLICY-1273
Change-Id: I9b48cbcdaf80d6d2ef19ef53e4b7cd4830e7e7b2
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Fixed some small sonar issues. Some of the others will be
taken care of when we implement things.
Issue-ID: POLICY-1602
Change-Id: I745962feaf00904c39b2e80e00bcc565f51dc8fd
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Added new Policy Finder Factory that ONAP will use and
got the code working with new policy/models (see other
review which will have to be merged first).
Added some new conversion methods to convert from a
Xacml request to an Onap request.
Added some property methods for XACML Properties objects
and JUnit tests.
Started filling in some Guard application details and
combining code.
Issue-ID: POLICY-1602
Change-Id: I5235b74f3b036dcf05779b655a03ac290d594354
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
Upgrde to xacml v2.0.0 release artifact.
Some re-arrangement of classes. New class to support a
common dictionary among the monitoring applications. I
may move it to a common under the main since some of the
values are shareable.
Created application service provider, so the XACML
main knows what policy types are pre-loaded and can
report them back to the PAP.
struggled with cucumber, which does not create
TemporaryFolder although the documentation says its
supported.
Added a new Policy Finder specific to ONAP which does
quicker job to load policies.
Issue-ID: POLICY-1273
Change-Id: I4af15a64da3b42d48f29809710421b1649625adc
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|