Age | Commit message (Collapse) | Author | Files | Lines |
|
The dependency should have been removed in the last review to
remove SDC and policy-yaml legacy code.
It was revealed that usage of TargetType and Type were spread out over the
actor code. Those fields are represented differently in the new
TOSCA Operational Policy Type, so fields were created to capture
those values to be used by actor code.
Issue-ID: POLICY-2428
Change-Id: Ib783526a518ca7942ae9e38019bd343639f4dd98
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
|
|
The target entity is not always known when an Operation is first
constructed, thus it should be treated as an Operation property instead
of being included within the ControlLoopParams. Started the process of
moving it from the Params to the properties.
Also fixed a bug in custom query - it was setting the outcome response
to the String response instead of setting it to the AaiCqResponse
object.
Also added logging when an Operation's properties are set.
Issue-ID: POLICY-2746
Change-Id: I56c0cd90985f6140363548b0b8d031471b586e88
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified ControlLoopOperationParams so that the request ID can
be provided instead of the context. However, if the request ID
is not provided, then it still requires a context. (This requirement
should be lifted in a subsequent review).
Issue-ID: POLICY-2746
Change-Id: Ib00f46f2fe56430d700ee2edfba12f2c1a106a3f
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified the Actors to use properties when the application provides them
instead of going to the event context for the data. This sometimes entailed
moving code out of the Operation subclass constructor that used or validated
the context data.
Combined some property names and renamed others.
Changed VF Count from AtomicInteger to Integer.
Issue-ID: POLICY-2746
Change-Id: Ib8730538309bb77d2f4f6161e9a20a49362d8972
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified Actors to skip the preprocessor step if the "preprocessed" flag
is set to true in the parameters. Did not add any error checking code
to ensure the data was actually available to the operation - will add
that once the properties are being set by the application code.
Extracted common code in GrpcOperationTest into the setup method.
Issue-ID: POLICY-2746
Change-Id: Id70c31a2c96a7aaa9d73cc70cdf4f55f8a4e087f
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified the Actor code to provide a list of properties needed by the
actor to perform a given operation.
Added a build() method to the parameter class so invokers can build an
operation and set its properties prior to starting it.
Added a "preprocessed" field to the parameter class so invokers can
indicate that the Actor need not perform any preprocessing steps. Will
modify the actors, in a subsequent review, to observe the flag.
Added "properties" to Operation so invokers can set the properties. Will
modify the actors, in a subsequent review, to use the property values
instead of the event context.
Tweaked a few Actors to get values using the "params" object instead of
reaching inside to the event object that it contains.
Addressed review comment(s):
- add prefix to other property names
Issue-ID: POLICY-2746
Change-Id: I65996aef5cec5afe25e8287c0b2f5f322c532ca5
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Fixed the following sonar issues in some of the project directories:
- use assertNull, assertEquals, etc.
- swap assertEquals arguments
- extract a constant
- don't invoke toString() in logger calls
- TODOs
- generic types
Issue-ID: POLICY-2714
Change-Id: Id8803f9bf617ea9fc173a67b8606600709b55bdc
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Deleted legacy actor code. That includes deleting most of the
XxxManager classes.
Issue-ID: POLICY-2559
Change-Id: I1ef1b900ca1d23e88da64b2c95a18986feb1b765
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Issue-ID: POLICY-2188
Change-Id: I6db16763c1d2d80ff934302081a8dfc16afa7d9a
Signed-off-by: liamfallon <liam.fallon@est.tech>
|
|
SO and VFC have duplicate code for polling. Moved it into the
common superclass.
Issue-ID: POLICY-2632
Change-Id: I27128bfb2d54ef522b6b44ff569819a8463f3454
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Added "operations" level to actor properties. Also renamed CommonActorParams
to ActorParams, in the process.
Note: This impacts the properties specified in drools-apps.
Issue-ID: POLICY-2629
Change-Id: I155bcb6ced73cb54e656d34e0b184fb2ed6250d1
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
|
|
The javadocs say not to use IdentityHashMap except in special cases.
Modified the Actor code to use HashMap instead.
Issue-ID: POLICY-2604
Change-Id: Idcae4fe2e1e600fbb01cdcd09b1caddf2820740a
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Issue-ID: POLICY-2603
Change-Id: I29d5c73f4b8b129bfdd6d0c9fb6d766b260e27c4
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified the Actors to use the "coder" to serialize requests
instead of defaulting to the HttpClient serialization provider.
Decided to just pretty-print the requests since that can be used for
both logging and transmission, which avoids serializing the request twice.
Issue-ID: POLICY-2601
Change-Id: I190ed19dd852a1aa66156b358cbc97c3b121af1f
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Now that the SDNR Actor populates the operation outcome with the
SDNR response, it no longer needs to populate the notification
structure, as the application (e.g., drools-apps) can now generate
the notification, itself, using the response.
Issue-ID: POLICY-2593
Change-Id: Ie9bed0e59ca750211f17782fa7a2833c2087ac23
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Added the response field and modified the actors to populate it.
Issue-ID: POLICY-2592
Change-Id: I24487b6fbc23b69bde4a95acd470864d8231c49d
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Made the following changes:
- Enhanced SDNR Actor to support any operation name specified within
the policy, constructing the same request, but passing a different
"RPC name" and "Action" in the request.
- Added ControlLoopResponse to OperationOutcome
- Modified SDNR Actor to populate ControlLoopResponse
Issue-ID: POLICY-2468
Change-Id: I50ee0674077d975f3cd211454656edc47d78520f
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Modified new actor code to generate the sub request ID
before invoking the start callback.
Issue-ID: POLICY-2461
Change-Id: I4adabd6efda2c30c0e2da31f95f01dd5fe546c0a
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Also modified HttpParams to allow "path" to be blank to support any
cases that really have no "path" to append to the context URI base
path.
Issue-ID: POLICY-2405
Change-Id: I49eebde6759659d2804b5a11c1504c37674bd0c4
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Missing various fields within the request structure (e.g.,
ONAPName). Fixed.
In the process, also modified makeGuardPayload() so that it
only constructs the inner "guard" JSON object, making it easier
for invoking code to modify it.
Issue-ID: POLICY-2434
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I7d34a279845bb98425caf66565eab7513d310815
|
|
If the topic processResponse() method throws an exception, then
the actor/operation is left in an incomplete state.
Issue-ID: POLICY-2434
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I6c5d149d4046fbfb970c8dd831fc3938516d1115
|
|
Modified the Guard Actor to check the "disabled" flag during
start() instead of waiting until it gets down into startOperationAsync.
Issue-ID: POLICY-1625-guard-disabled
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Id6ccf506b82504552d6e1f4637ad11e2e41e77e5
|
|
Rule notifications need the subrequest ID to be populated in the
OperationOutcome object, where possible.
Issue-ID: POLICY-2385
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ic44320f67ad8df7bcb3000cfa667f95427818e71
|
|
Actors only log the URI, without the host and port info. Modified
to log the full URL.
Also adjusted URLs for trailing "/".
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I0c9a2d139258ef23bc363a873b56f5cb4680247d
|
|
Also added legacy ModifyConfig as an operation within APPC-LCM.
Added logging to topic registration keys.
Issue-ID: POLICY-2403
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ia54a573fd6218a8afe870184b9a3baebc05b766a
|
|
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I1efa70785e162c9a02ed90f5f8d94e85d2432d73
|
|
|
|
|
|
Code was publishing and then logging the message. Reversed the
order.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I1b5dd5e96d86d818cd38d2a671fb37c2576e2054
|
|
When an Actor operation is canceled it's done on purpose, yet the whole
exception stack trace is included in the log. Modified the code to
leave out the stack trace for cancellations. I don't THINK this will
cause a sonar issue, as it isn't the exception is never caught via
a "catch" clause.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ib5238e4791ae491b30286cdc8ed9caf67432dc26
|
|
A&AI tenant query is prepending the target entity with "/", but it should
not. Fixed it.
Modified A&AI and SO actors to get path prefixes from parameters.
Fixed a bug in an A&AI simulator response (extra "}" at the end.
Issue-ID: POLICY-2349
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I71f8b1e5fb8a4bd29b4f616a7757d366c7d58127
|
|
When an operation cannot be configured, the message did not
include information describing the issue. Fixed it.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I671bf27693a8bfa87305099fcefa0e4e0c48928d
|
|
|
|
When actors with duplicate names are loaded, a way is needed to
determine which should take precedence. Added a sequence number to
Actor to facilitate this. Unfortunately, couldn't use OrderedServiceImpl,
because it only creates the Actors once, which would break a number
of junit tests.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I1ade92f4fe516cfc54bb92d0a3624c67e8981075
|
|
If a task outcome is null, then sequence() throws an NPE. Modified
it to treat a null outcome as a failure.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I57b8be27f72c7cbf43e0b3b8816696ab1928f396
|
|
It's a bit of a pain to pass Map<String, Map<String,Object>> to
the ActorService configure() method. Changed it to simply take
a Map<String,Object>, as it had been in a previous iteration.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ib6e703115027bc4919cc93762ca5b38d254f2b8f
|
|
Now that ActorService is no longer a singleton, the constructor
should be public so other classes can create an instance.
Also added a test to verify that each ActorService instance gets
its own instances of the actors.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I78cabecc0ca6b355696a5d27489a4e59b6e7c012
|
|
|
|
Eliminated a few more xxxAsync calls in Actors. Now, the remaining
xxxAsync calls are necessary so that the callbacks are executed using
the executor specified via the "params".
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ia4ff758f71f8bbe014ae5b1a58d8439c0d4ea2ed
|
|
The ActorService singleton is not needed at this time, so it was
removed.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I9b4cbb72cedbeb77b39422e71650ab60c9aec7ec
|
|
Issue-ID: POLICY-2385
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I7745e8286dd6f086941b979f16b2328bfa066788
|
|
The Actor clients receive notifications of operation failures, but
no indication if it's the final failure, thus they do not know if
they should progress on to the "failure" policies.
Issue-ID: POLICY-2385
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: If053ed459e1d790e58eca950a8feeabaf4d67a41
|
|
This was supposed to be two separate commits, but I goofed something.
Added guard query to Operation superclass. Modified VfModuleCreate
to store the VF count, pass it to the guard, and bump it once the
create completes successfully.
Added code to check Actors for proper plug-in to ActorService.
Renamed "operation" property to "operations", to be more consistent
with other parameters (e.g., TopicParameterGroup).
The META-INF/services files for the actors had mixed case, which
did not match the package name of the Actor class, preventing the
ServiceLoader from recognizing them. Also modified the ActorService
to skip any that cannot actually be loaded, for whatever reason
(e.g., not in the classpath).
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ifa97744543f2866cc553138ec5ec644b033de780
|
|
Currently, Operator classes refer to Operation classes, and
vice versa, creating a dependency cycle. In addition, there is
a slight problem in that if an operator is reconfigured, any
running operation may get inconsistent configuration data.
Modified the code to create Config objects that are passed to
the operation, instead of passing the Operator to the operations.
This solved both issues.
Replaceed makeOperator() with constructors.
Added parameter type to HttpActors.
Modified guard to get "ONAP" properties from its configuration,
as a default.
Changed setUp() to setUpBasic(), so "throws Exception" could be
removed, thus resolving a sonar issue.
Issue-ID: POLICY-1625
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I21eb8798acfbc636ff1bd8741b21c7278365b6e4
|
|
Issue-ID: POLICY-2371
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I3faf0276e8039dc43a976d18ff8e704fdbec3d49
|
|
Used SuperBuilder in operation Params classes.
Added rawResponse to http setOutcome().
Made HttpOperation.operator private.
Issue-ID: POLICY-2371
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ie894f2e6ae4a31b69a700e425f9e94c5e8a15daa
|
|
Use Coder.convert() from policy-common.
Passed response to setOutcome().
Changed class names from XxxOperator to XxxOperation.
Modified SDNC junits to invoke start() instead of startOperationAsync().
Changed context obtain() to re-run if the future was canceled.
Added junit support class, BasicBidirectionalTopicOperation.
Modified HttpOperation to allow subsequent requests to be issued.
Some actors, like SO, send an initial HTTP request and then follow
it with HTTP "are you done?" requests.
Issue-ID: POLICY-2363-prop
Change-Id: I12b5c2d4f07254e0cb79fabfe1ccf844b70a0654
Signed-off-by: Jim Hahn <jrh3@att.com>
|
|
Also modified "target" to sink in various places, and renamed
various uses of "pair" to "bidirectional" (e.g., TopicPairParams
=> BidirectionalTopicParams).
Also replaced MyExec with PseudoExecutor, from policy-common.
As part of this, extracted the logRequest and logResponse methods
from the Http and Topic classes, moving them into the common
OperationPartial class.
Modified A&AI, SDNC junit tests to use PseudoExecutor.
Added support for incomplete responses on Topics, where multiple
responses may be received for one request
Fixed a duplicate entry in actor.aai pom.
As the changes were already big enough, went ahead and also did the
following to support the APPC Actor:
- Reorganized parameter classes and content.
- Modified anyOf, allOf to take functions instead of futures and handle
exceptions thrown by any of the functions. Also added sequence() method.
- Deleted doTask.
- Modified ActorService.config to take a map of maps, not just a map.
- Decided NOT to move anyOf, allOf, and sequence from OperationPartial
to a utility class, because they depend on "params".
Issue-ID: POLICY-2363
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: I5a8bae05dfef22fe71c57c58f265b9dac20df5c5
|
|
Issue-ID: POLICY-2363
Change-Id: I5d29d85f6c5f40fb6c8f1bf678d9c718760a7558
Signed-off-by: Jim Hahn <jrh3@att.com>
|