David [Sun, 26 Feb 2017 18:16:11 +0000 (19:16 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-openflow-utils:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Rename variables
- Move declaration of variables closer to their use
- Exception catching
- Enforcement in pom.xml
Change-Id: I0679a193d3efdca9a9fc1b01dd49c3fdd8459941
Signed-off-by: David <[email protected]>
David [Fri, 24 Feb 2017 09:49:59 +0000 (10:49 +0100)]
Change package name to comply with Java checkstyle
Change the name of package transactional_writer to writer to comply with
Java checkstyle.
Change-Id: Iad481e329815db75783c46e8eae5392ec6bacce6
Signed-off-by: David <[email protected]>
eceabpe [Mon, 13 Feb 2017 15:47:25 +0000 (16:47 +0100)]
Docker environment + SFC e2e traffic tests
-Add some updates to 'dovs' utility (that simulates neutron networks)
-Add tools to test end to end traffic for Service Function Chaining
with NSH in Logical-SFF configurations
-Add a Simple Service Function HTTP Header Enrichment (with its own tests)
-Add brief documentation (README.asciidoc files)
-Add Test cases see below
Example demo for testing the Logical SFF end-to-end SFC traffic
-Start the Controller (e.g. that run on 172.28.128.3)
-Start the 'dovs' environment:
cd sfc-test/sfc-docker/
vagrant destroy -f && vagrant up && vagrant ssh
> cd /vagrant/sf_hhe/logical_sff
A. SFs in a DIFFERENT subnets
-1 Test traffic in two Service Function Chains
> sudo ./test_case_01_traffic_different_subnet.sh -o 172.28.128.3
-2 Test traffic in one Service Function Chain
+ Test traffic after moving one VM to other compute node
> sudo ./test_case_02_move_vm_different_subnet.sh -o 172.28.128.3
B. SFs in the SAME subnet
-3 Test traffic in two Service Function Chains
> sudo ./test_case_03_traffic_same_subnet.sh -o 172.28.128.3
-4 Test traffic in one Service Function Chain
+ Test traffic after moving one VM to other compute node
> sudo ./test_case_04_move_vm_same_subnet.sh -o 172.28.128.3
- Clean the network topology in 'dovs'
> sudo dovs clean --odl 172.28.128.3
Executing tests from A and B requires restart ODL Controller and dovs
-There are many logs that will be stored in ./logs
(e.g. To see TCP packages in client of first Chain for test case 01
> tcpdump -qns 0 -A -r ./logs/client1_tcpdump.pcap tcp )
- Check SFC configuration
> ./GetSfcConfig.py -v -ip 172.28.128.3
Change-Id: Idf02270444eb52597a4921563374e6876b5959cf
Signed-off-by: eceabpe <[email protected]>
David [Wed, 22 Feb 2017 23:46:22 +0000 (00:46 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-ios-xe-renderer:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use
Change-Id: I553c598839513c6c651527561e669df39e0e2779
Signed-off-by: David <[email protected]>
Yi Yang [Tue, 21 Feb 2017 02:51:11 +0000 (10:51 +0800)]
Clean up and fix RSP and service classifier remove issues
When a RSP is removed, the corresponding vpp configuration
should be removed and cleaned up, vpp classifier configuration
also should be removed correctly after a service classifier
is removed.
This patch makes sure the related VxlanGpe ports, nsh entries,
nsh maps, vpp classify tables and vpp classify sessions are
removed and cleaned up after RSP or service classifier is
removed.
Change-Id: I9c10d8ce8275f90d5196f2974572307011269db1
Signed-off-by: Yi Yang <[email protected]>
David [Tue, 21 Feb 2017 23:11:57 +0000 (00:11 +0100)]
Remove overall checkstyle activation in SFC
The overall checkstyle activation is not defined locally
in the specific projects as SFC anymore, but in the odlparent's POM.
This patch remove the local files stored in the
sfc-parent directory referenced by some modules like
the sfc-network-topology-utils.
The actual enforcement will be done on a per-module
basis, as in the following:
https://git.opendaylight.org/gerrit/#/c/51040/2/sfc-netconf/pom.xml
Change-Id: I9f742b83240f2055f352e71c64984f04b92563e1
Signed-off-by: David <[email protected]>
David [Tue, 21 Feb 2017 16:02:07 +0000 (17:02 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use
Change-Id: I8972b29436b8710777c2680347a1f52aaded1c8e
Signed-off-by: David <[email protected]>
David [Mon, 20 Feb 2017 08:14:20 +0000 (09:14 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use
Change-Id: I53b97f7709885629496f5f261bb017353a232ce2
Signed-off-by: David <[email protected]>
Yi Yang [Mon, 20 Feb 2017 00:51:17 +0000 (00:51 +0000)]
Merge "Fix issues related to checkstyle compliance"
David [Fri, 17 Feb 2017 18:18:54 +0000 (19:18 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-provider:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use
Change-Id: If486916d2236a3f463e5a17fc94d68a253d13c49
Signed-off-by: David <[email protected]>
Yi Yang [Fri, 17 Feb 2017 04:06:07 +0000 (12:06 +0800)]
Add VPP classifier
From vpp, honeycomb, hc2vpp and nsh_sfc 17.01 on,
vpp can act as sfc classifier as ovs-dpdk did before,
this patch adds a new classifier sfc-scf-vpp, it can
translate IETF ACLs into vpp classify tables and
sessions. With this commit, sfc can achieve NSH-based
service function chaining only based on vpp instead ovs,
this makes people have another choice to do service
function chaining.
By the way, NSH implementation has been part of vpp
releases, so we needn't any extra patch for NSH.
Change-Id: I8fe1bc5144140a0c378b87bef884ca49ba9223a8
Signed-off-by: Yi Yang <[email protected]>
David [Wed, 15 Feb 2017 09:47:11 +0000 (10:47 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Order imports
- Declaration of constants: name, modifiers
- Formatting
- Remove redundant modifiers: public in interface methods, final, etc.
- Rename variables
- Move declaration of variables closer to their use
Change-Id: I732f5f0141923756894919982dfc3938249717a5
Signed-off-by: David <[email protected]>
Brady Johnson [Fri, 10 Feb 2017 11:30:18 +0000 (11:30 +0000)]
Merge "Fix issues related to checkstyle compliance"
Brady Johnson [Fri, 10 Feb 2017 11:30:09 +0000 (11:30 +0000)]
Merge "Fix issues related to checkstyle compliance"
Yi Yang [Fri, 10 Feb 2017 10:58:54 +0000 (10:58 +0000)]
Merge "Delete SFF VXGPE port upon SFF deletion"
David Suarez [Thu, 9 Feb 2017 20:46:49 +0000 (21:46 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Group overloaded methods
- Remove redundant modifiers: public in interface methods, final, etc.
- Move variable declarations to be closer to their usage
Change-Id: Ic997732b525d3397532650282a13d1d742c50d3b
Signed-off-by: David Suarez <[email protected]>
Change-Id: Ibae8e1e15156d51c37ff9b152eb8081f89545d21
Signed-off-by: David Suarez <[email protected]>
David Suarez [Thu, 9 Feb 2017 14:43:29 +0000 (15:43 +0100)]
Fix issues related to checkstyle compliance
Fix issues related to checkstyle compliance in module
sfc-openflow-renderer:
- Copyright sections
- Line lengths
- Declaration of constants: name, modifiers
- Formatting
- Group overloaded methods
- Remove redundant modifiers: public in interface methods, final, etc.
- Move variable declarations to be closer to their usage
Change-Id: Ic997732b525d3397532650282a13d1d742c50d3b
Signed-off-by: David Suarez <[email protected]>
David Suarez [Thu, 9 Feb 2017 22:44:15 +0000 (23:44 +0100)]
Change package name to comply with checkstyle
Change package name to comply with checkstyle rules and other minor
changes to follow its rules.
Change-Id: Id82b4513f49dd9f09b3b1be74c323d6b29ac0e60
Signed-off-by: David Suarez <[email protected]>
Brady Johnson [Fri, 13 Jan 2017 11:19:50 +0000 (12:19 +0100)]
Delete SFF VXGPE port upon SFF deletion
- Added sfc_ovs/provider/listener unit tests
Change-Id: I82ddda7319957fea390aeef2ddace367e3d30be1
Signed-off-by: Brady Johnson <[email protected]>
Jaime Caamaño Ruiz [Wed, 21 Dec 2016 11:11:48 +0000 (12:11 +0100)]
docker environment to test sfc
This directory provides:
- An utility, 'dovs', to setup neutron networks where compute nodes
are containerized openvswitch instances and VMs are isolated network
namespaces connected to such instances.
- A vagrant driven virtual environment prepared to run dovs
The plan is to further add utilities to test SFC on top of this
environment, and will also be used for CSIT SFC.
Change-Id: Ife8357d50b7df43400504d9bd602ff9afd1b88a7
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
Brady Johnson [Tue, 7 Feb 2017 08:24:14 +0000 (08:24 +0000)]
Merge "Bug 3712: SFP validation of SF types at creation time"
David Suarez [Mon, 6 Feb 2017 23:44:30 +0000 (00:44 +0100)]
Minor changes in sfc-genius module to comply with checkstyle
Minor changes in sfc-genius module to comply with checkstyle.
Change-Id: I549b89f7717181906c925dad3b2baff6ca2720f2
Signed-off-by: David Suarez <[email protected]>
Diego Granados [Mon, 16 Jan 2017 10:58:39 +0000 (11:58 +0100)]
Bug 3712: SFP validation of SF types at creation time
This commit makes use of DOMDataTreeCommitCohorts (callbacks
that can be registered in order to participate in commit
validation) in order to make sure that newly-added datastore
SFPs are consistent with previously defined SFCs and SFs.
Specifically, it is checked that the types for the SFs the
SFP references are consistent with the SF types that the
SFC specifies.
Since the datastore commit transaction is kept open during
validation, this validation must be as fast as possible.
Controller guidelines about not opening new datastore
reads in order to validate a DS write have been followed
to the maximum extent; for this reason, a datastore cache
has been deployed to cover both SFs and SFCs. On systems
with less than 500 SFs & SFCs deployed, caches will provide
total coverage (i.e. validation will never need to access
datastore)
Testing: manually tested (complex interactions between
controller-mdsal-scf are too hard to simulate). Proper CSIT
tests will be delivered to the sfc suites in the integration
project.
Change-Id: I5886d0be9191043aa8227c242a1498e518b31a38
Signed-off-by: Diego Granados <[email protected]>
Yi Yang [Thu, 26 Jan 2017 13:28:46 +0000 (21:28 +0800)]
Update vpp YANG models to 17.01 release
Change-Id: I77f7e6e3e4508d49ff57dc0d36f9998546386bc2
Signed-off-by: Yi Yang <[email protected]>
David Suarez [Wed, 1 Feb 2017 22:40:12 +0000 (23:40 +0100)]
Rename sfc-ios-xe-renderers packages to comply with checkstyle
Rename sfc-ios-xe-renderers packages to comply with checkstyle.
Change-Id: Ida04fae3ddba129564e76aedb989e8415f6153ab
Signed-off-by: David Suarez <[email protected]>
eabasan [Tue, 17 Jan 2017 14:48:51 +0000 (15:48 +0100)]
Bug 7554: Update GUI after deprecating nsh-aware in SF and other changes in model
After the following commits, GUI should be updated:
1) https://git.opendaylight.org/gerrit/#/c/49687/
Removing deprecated SF fields (nsh-aware)
2) https://git.opendaylight.org/gerrit/#/c/49546/
Deprecating the SFC and RSP symmetric flags
Change-Id: I994d70878ff5d6f71aca54b338076df9bf2d3a05
Signed-off-by: eabasan <[email protected]>
Srihari [Tue, 20 Dec 2016 09:44:44 +0000 (15:14 +0530)]
SFC Proof of Transit SB changes.
1. Add changes to handle RPC trigger to generate PoT configuration.
2. Add timer wheel and configuration refresh related timer code.
3. Add core SFC PoT configuration generation APIs
4. Utilities for listening to node arrivals and sending via NETCONF
5. Add unit tests.
6. Design guide and documentation: https://github.com/CiscoDevNet/iOAM
Change-Id: Ibfcf98509c91d8e9d0c20c741e08813c0ab19ef8
Signed-off-by: Srihari <[email protected]>
Jaime Caamaño Ruiz [Mon, 16 Jan 2017 18:01:05 +0000 (19:01 +0100)]
Use operational for DPN term. service actions
Remove in-memory handling of DPNs for terminating service actions.
Replace with listener for changes on the existing DPN to RSP map
already available on operationa data store
(service-function-forwarder-logical.yang, dpnid-rsps grouping).
In detail:
- Main module interface has been moved and renamed, from
impl/handlers/ISfcGeniusInterfaceServiceHandler to
impl/SfcGeniusServiceManager. This is because the module
is no longer centered on interface events as it now responds
to DPN related events.
- SfcGeniusServiceManager has two new methods, bindToNode and
unbindFromNode, to create and remove the SFC terminating service
action on the nodes.
- SfcGeniusServiceManager no longer has an interfaceStateDown method
which only purpose was to remove the SFC terminating service action
on VM migration. Note that now this is delayed up until the VM
migration completes: interfaceStateUp on a new Node triggers
the re-rendering of the appropiate RSPs which updates the map
of DPN to RSP, which in turn triggers the removal and creation
of the SFC service terminating action on the appropiate nodes.
- A new listener, SfcGeniusSffDpnStateListener, that in response
to changes on the DPN to RSP map, will trigger SFC service
binding or unbinding towards the DPN.
Change-Id: I2cfe36fadedba619ed959ba6e3c6533787a88be4
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
Miguel Duarte [Mon, 30 Jan 2017 14:14:39 +0000 (15:14 +0100)]
Act on sonar reported issues / technical debt
Stop using the 'order' local variable in the SfcOfFlowProgrammerImpl
methods; since we're only appending the action to the action list, I
think it is more explicit / less error-prone to indicate the 'order' as
the current-list size (always append to the end of the list)
The configureNshNscTransportEgressFlow in the SfcOfFlowProgrammerImpl
class had a bug; the next protocol was not deing correctly defined as
NSH - as a result, that action list only featured a single action, which
is to set the output port. Now it has an action setting the next
protocol to NSH, and another setting the output protocol.
Tests are updated accordingly.
Used a StringBuilder instead of a StringBuffer in the SfcOfRspProcessor
because the StringBuffer is thread safe, which, in this scenario only
leads to throttled performance.
Removed the TUN_GPE_NP_NSH constant from yet another class.
Change-Id: Ie66ba64f4ec015e97856da5289c19f10efdf3566
Signed-off-by: Miguel Duarte <[email protected]>
David Suarez [Tue, 31 Jan 2017 17:04:22 +0000 (18:04 +0100)]
Enforce checkstyle in sfc-sfclisp module
Checkstyle enforcement for sfc-sfclisp module:
- Remove commented blocks
- Formatting
- Lines length
- Re-factor switch
- Replace catching of generic exceptions
- Move overloaded methods
- Fix Javadocs
- Protected constructor for utility classes
- Order imports
- Change attributes names
Change-Id: I234ee2489051132dcd3e6a5ae8ff904b94cb89d8
Signed-off-by: David Suarez <[email protected]>
David Suarez [Thu, 26 Jan 2017 21:55:37 +0000 (22:55 +0100)]
Enforce checkstyle in sfc-genius module
Checkstyle enforcement for sfc-genius module
- Formatting
- Fix Javadocs
- Order imports
- Change attributes names
- Replace catching of generic exceptions
- Lines length
- Enforce rule in POM
Change-Id: I35df8a29ee0813ed43c92391115350fa174d71a7
Signed-off-by: David Suarez <[email protected]>
Diego Granados [Thu, 26 Jan 2017 17:39:47 +0000 (18:39 +0100)]
LSFF Fix: add NSH as NP at SFF->SFF egress
Also test changes
Change-Id: Iddde0e57654aa045b6c8a33108fdb75463157408
Signed-off-by: Diego Granados <[email protected]>
David Suarez [Wed, 25 Jan 2017 22:42:02 +0000 (23:42 +0100)]
Enforce checkstyle in sfc-netconf module
Checkstyle enforcement for sfc-netconf module
- Protected constructor for utility classes
- Formatting
- Fix Javadocs
- Order imports
- Change attributes names
- Replace catching of generic exceptions
- Remove commented blocks
Change-Id: I84669eb8c62429ab3b6b3377da19f0e4cf95bcfa
Signed-off-by: David Suarez <[email protected]>
Michael Vorburger [Mon, 23 Jan 2017 18:53:22 +0000 (19:53 +0100)]
Replace mockito-all by mockito-core (see Bug 7662)
Change-Id: I884d88f940955788bf7d5f0194183e198c9fad0e
Signed-off-by: Michael Vorburger <[email protected]>
Yi Yang [Thu, 26 Jan 2017 11:39:21 +0000 (19:39 +0800)]
Split sfc-vpp-utils bundle from sfc-vpp-renderer for sfc-scf-vpp
sfc-scf-vpp (SFC VPP classifier) needs to use common APIs from
sfc-vpp-renderer, so split them as a single bundle sfc-vpp-utils
for sharing between sfc-vpp-renderer and sfc-scf-vpp (the following
commit will implement it).
Change-Id: I87e94e484cde388a8d62cee71d48e1ff0201cb11
Signed-off-by: Yi Yang <[email protected]>
Yi Yang [Wed, 25 Jan 2017 00:48:21 +0000 (00:48 +0000)]
Merge "Rename package sfc_lisp to sfclisp to comply with checkstyle."
David Suarez [Tue, 24 Jan 2017 20:58:37 +0000 (21:58 +0100)]
Rename packages to comply with checkstyle
Rename packages to comply with checkstyle:
- org.opendaylight.sfc.sfc_netconf.provider to
org.opendaylight.sfc.netconf.provider
- org.opendaylight.sfc.sfc_netconf.provider.api to
org.opendaylight.sfc.netconf.provider.api.test
Change-Id: I6d5991e820bcebbafbd75e33587b303097f56eda
Signed-off-by: David Suarez <[email protected]>
David Suarez [Sat, 21 Jan 2017 20:54:40 +0000 (21:54 +0100)]
Rename package sfc_lisp to sfclisp to comply with checkstyle.
Change package name to comply with checkstyle
Change-Id: I67b9d1d0430a55683eb6fa0647e0ad685dbeab2c
Signed-off-by: David Suarez <[email protected]>
David Suarez [Tue, 17 Jan 2017 14:52:17 +0000 (15:52 +0100)]
Enforce checkstyle in sfc-model module
Checkstyle enforcement for sfc-model module.
Change-Id: I682caf74141441b04a4b34ae66de50b96cf1e8a0
Signed-off-by: David Suarez <[email protected]>
Diego Granados [Mon, 16 Jan 2017 16:17:22 +0000 (17:17 +0100)]
BUG-7555. Crash on RSP rendering when using a Logical SFF
The bug was triggered because of the code uncorrectly comparing two
different DpnIdType objects using the == comparator. Even though
both objects refer to the same dpnid, the objects are not the same,
thus triggering the error path (asking genius for a tunnel interface
between two different compute nodes but passing the same dpnid for
both tunnel ends). Incorrect component tests corrected; an additional
test for the condition will also be included in CSIT
Change-Id: I98158145fc2e8b5ae72989d0d1ef3c7bcdaf7bd1
Signed-off-by: Diego Granados <[email protected]>
Yi Yang [Fri, 13 Jan 2017 00:33:35 +0000 (00:33 +0000)]
Merge "Model changes for VXLAN transport/encap"
Brady Johnson [Thu, 12 Jan 2017 11:31:37 +0000 (11:31 +0000)]
Merge "Clean the usage of boolean expressions"
David Suarez [Wed, 11 Jan 2017 13:56:20 +0000 (14:56 +0100)]
Clean the usage of boolean expressions
Clean the usage of boolean expressions and other minor improvements for
readability.
Change-Id: Ieda16a49c71da3bdc61fc3f2722ab39aba4f6c25
Signed-off-by: David Suarez <[email protected]>
Brady Johnson [Thu, 12 Jan 2017 09:52:19 +0000 (10:52 +0100)]
Model changes for VXLAN transport/encap
- Added VXLAN transport
- Added single chain SF parameter
Change-Id: Ie2ed5eeffe80ad70bf60062301c12b7a560d0f2f
Signed-off-by: Brady Johnson <[email protected]>
Miguel Duarte [Tue, 3 Jan 2017 10:36:25 +0000 (11:36 +0100)]
Make code more explicit and less redundant
- Make better use of java types
- Remove duplicated code
- Remove compiler warnings
Change-Id: I133728bbfd97994fe3d7a335eddf4f9a4d461094
Signed-off-by: Miguel Duarte <[email protected]>
Brady Johnson [Wed, 11 Jan 2017 14:04:14 +0000 (14:04 +0000)]
Merge "GUI - Add default redirect on app start"
Daniel Malachovsky [Tue, 10 Jan 2017 18:54:39 +0000 (19:54 +0100)]
GUI - Add default redirect on app start
Due Dlux split we removed Topology app from odl-dlux-core feature.
There were also default redirect to that app, so it was landing page, when
DLUX was started.
This patch adds default route to GUI in this project.
More info:
https://wiki.opendaylight.org/view/Weather#Rename_some_odl-dlux-.2A_features_to_odl-dluxapps-.2A
Change-Id: I025ffe3403392458207af0fea52b57af75bb22b0
Signed-off-by: Daniel Malachovsky <[email protected]>
David Suarez [Wed, 11 Jan 2017 08:31:36 +0000 (09:31 +0100)]
Replace Arrays.asList by Collections.singletonList.
It is a minor performance improvement.
Change-Id: Ibdb6f42918551465e304735fde357aff2b36c9d8
Signed-off-by: David Suarez <[email protected]>
Yi Yang [Wed, 11 Jan 2017 07:38:04 +0000 (15:38 +0800)]
Move sfc-scf-openflow into sfc-classifiers
We want to add VPP classifier for sfc, so do this change to adapt to multiple sfc classifiers.
Change-Id: I43c9f5a2a423bb802be533a23161c42828696b6c
Signed-off-by: Yi Yang <[email protected]>
Yi Yang [Wed, 11 Jan 2017 05:45:48 +0000 (13:45 +0800)]
sfc104 demo: fix two issues led by proxy environment variable and recent sfc YANG model changes
Change-Id: Iab4e2515c56ef122bc114c3f9a343df954bdaefe
Signed-off-by: Yi Yang <[email protected]>
Brady Johnson [Wed, 11 Jan 2017 11:58:49 +0000 (11:58 +0000)]
Merge "Remove explicit type boxing."
David Suarez [Tue, 10 Jan 2017 16:13:26 +0000 (17:13 +0100)]
Remove explicit type boxing.
Autoboxing is applied improving readability.
Change-Id: Ia3388c0e18d1d0b46a1e4bff7f680723b9d3e88e
Signed-off-by: David Suarez <[email protected]>
David Suarez [Tue, 10 Jan 2017 13:53:20 +0000 (14:53 +0100)]
Add private constructor.
Add private constructor to utility class to avoid instantiation.
Change-Id: I194258e406cb3a1d691b7a26c0dcbc63f6de5b2f
Signed-off-by: David Suarez <[email protected]>
Miguel Duarte [Wed, 21 Dec 2016 15:15:55 +0000 (16:15 +0100)]
Refactor the Classifier Processor classes.
By making the flow generator classes return FlowDetails instead of
FlowBuilders, both the OpenflowClassifierProcessor and the
ClassifierRspsUpdateListener classes are simpler, since they are no
longer responsible of building the FlowDetails object.
The dpdk flow generation was also taken to the classes
implementing the ClassifierInterface (BareClassifier &
LogicallyAttachedClassifier), thus making the processAce simpler.
This enables the processAce and processAcl methods on those classes to
become simpler, thus reducing their cyclomatic complexity - overall
indicator of complexity.
Change-Id: I93af5fc075c19854e417452f62d3afb711c47c51
Signed-off-by: Miguel Duarte <[email protected]>
Miguel Duarte [Mon, 19 Dec 2016 10:21:52 +0000 (11:21 +0100)]
Remove technical debt from the project
Break package cycles between scfofrenderer,
scfofrenderer.logicalclassifier, and scfofrenderer.rspupdatelistener
packages.
This was found by analyzing the sonarcube results, and means that these
3 modules are tightly coupled. By restructuring the packages, the
circular dependencies are fixed.
Modified the OpenflowClassifierProcessor, attempting to make it simpler.
In a latter commit, its methods will be split, thus simplifying it quite
a lot.
Change-Id: I00b29c163edb6bdc72ee6c9d2fae7691211049c4
Signed-off-by: Miguel Duarte <[email protected]>
eabasan [Mon, 9 Jan 2017 08:08:17 +0000 (09:08 +0100)]
Modified JSON files in resources to adapt them to deprecated fields in Service Functions
Added one configuration example using bidirectional field in SF type
Change-Id: I10d872873f6a1f56855788f159b5ac31ac8cf797
Signed-off-by: eabasan <[email protected]>
Yi Yang [Thu, 22 Dec 2016 00:12:38 +0000 (00:12 +0000)]
Merge "Removing deprecated SF fields"
Brady Johnson [Thu, 10 Nov 2016 10:29:28 +0000 (11:29 +0100)]
Removing deprecated SF fields
- The SF fields nsh-aware and request-reclassification were
deprecated in Beryllium. The fields were added to the
SF-type, so use those instead.
Change-Id: I81d4b3fddd23fb68bed556f73b44c5e9fde7eff6
Signed-off-by: Brady Johnson <[email protected]>
Miguel Duarte [Wed, 30 Nov 2016 11:42:39 +0000 (12:42 +0100)]
Classifier reacts to first SF location updates
Whenever the first SF in an RSP migrates to another compute node, the
classifier rules are updated accordingly - whether sending the packet
through a different tunnel connected to the new compute node, or, in
scenarios when the SF moved to the compute node where the classifier is
installed, by jumping directly to the SFC transport ingress table.
The helper methods on the OpenflowClassifierProcessor were moved into a
new class - ClassifierHandler.
The ClassifierRspUpdateDataGetter was finished, providing 2 methods:
- filter all ACLs whose ACEs impact the supplied RSP
- filter all ScfClassifier objects that implement those ACLs
The ClassifierRspsUpdateListener was added logic on how to identify the
movement of the first SF in any RSP, and also triggers the classifier
flows update through the ClassifierRspUpdateProcessor.
The ClassifierRspUpdateProcessor follows the same principle of the
OpenflowClassifierProcessor - build all the flows to be installed. A new
class was created to separate the concerns (classifier updates have the
RSP as its single argument, whereas classifier add/delete have the ACL
and the ScfClassifier objects as arguments).
Everything else are tests (+- 600 lines)
Change-Id: I487d98d282b28aefd79d0658fcc50e20897beffa
Signed-off-by: Miguel Duarte <[email protected]>
Yi Yang [Wed, 21 Dec 2016 08:34:09 +0000 (08:34 +0000)]
Merge "Deprecating the SFC and RSP symmetric flags"
Miguel Duarte [Wed, 14 Dec 2016 10:11:27 +0000 (11:11 +0100)]
Handle RSP updates on the classifier APIs
The APIs leveraged by the classifier were changed enabling it to update
its flows when the first SF in an RSP migrates to another compute node.
New classes (to be implemented in the next commit):
- ClassifierRspUpdateDataGetter
This class queries MD-SAL for all ACLs whose ACEs target the supplied
RSPs, and also queries MD-SAL for all Classifiers enforcing the filtered
ACLs.
- ClassifierRspsUpdateListener
Identifies relevant RSP updates (RSPs whose 1st SF neutron port changed
data-plane IDs), and processes that RSP update - deleting the old
impacted flows, and creating new ones.
API changes:
- OpenflowClassifierProcessor
The OpenflowClassifierProcessor now *has* a BareClassifier, and a
LogicallyAttachedClassifier object, injected through the constructor.
Which classifier(Bare vs LogicallyAttached) is used for each processed
request depends on the type of SFF to which it is connected to.
- SfcNshHeader
The SfcNshHeader class now encapsulates an RSP object, which can be set
through a different constructor. Using this allows us to save DS reads
on RSP updates, since we are notified with the new object.
- SfcScfOfProcessor
The SfcScfOfProcessor class got simpler, and now does not have to
encapsulate and inject the transaction object into the OpenflowWriter
and OpenflowClassifierProcessor.
- SfcScfOfRenderer
The SfcScfOfRenderer class now also features an update handler for RSPs.
Also, it injects the required dependencies into the
OpenflowClassifierProcessor and OpenflowWriter objects, while making
them share the same transaction objects.
- SfcOfFlowWriterInterface
The SfcOfFlowWriterInterface and its subclass now encapsulate an
EventBus, and expose a transactional API. Clients that want to share the
same transaction object as the OpenflowWriter register themselves, and
are notified whenever the OpenflowWriter commits a transaction.
Also, the FlowDetails class manipulated by the SfcOfFlowWriterInterface
now encapsulates the used RSP path ID, making it easier / more efficient
for the SfcOfFlowWriterInterface clients to delete a set of related
flows.
Log messages are tuned throughout the classifier code, along with the
used log levels.
Change-Id: I0d61f090bdfec2e58aa0e811988ea9cca32be66c
Signed-off-by: Miguel Duarte <[email protected]>
Brady Johnson [Fri, 11 Nov 2016 09:26:07 +0000 (10:26 +0100)]
Deprecating the SFC and RSP symmetric flags
- Chain symmetry is now a function of the SF-type bidirectionality flag
- The SFP symmetry flag, if present, will override the SF-type
bidirectionality flag
- Minor cleanup of the SfcProviderRpcTest test
Change-Id: I1bbc3a368a28ad69169b640cc729ec69dd17180e
Signed-off-by: Brady Johnson <[email protected]>
Brady Johnson [Wed, 14 Dec 2016 09:58:22 +0000 (09:58 +0000)]
Merge "Add blueprint for sfc-genius module"
eabasan [Fri, 11 Nov 2016 06:52:10 +0000 (07:52 +0100)]
Add unit test for logical SFF RSP Processor with SFs in different compute nodes
Change-Id: Ia74690c081ac514f5c765a207ab9cdb0abcf6ae7
Signed-off-by: eabasan <[email protected]>
Jaime Caamaño Ruiz [Tue, 13 Dec 2016 16:10:55 +0000 (17:10 +0100)]
Add blueprint for sfc-genius module
Change-Id: Id311dbaca587419fb99217ffba128eb06eba76d4
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
Diego Granados [Tue, 13 Dec 2016 10:08:49 +0000 (11:08 +0100)]
BUG 7350: NullPointerException when creating RSP without any topology node connected
The bug is triggered when looking for a dpdk port during RSP
rendering. An unchecked-for-null iteration is performed in
the topology nodes list. Now the list of nodes is checked
for null before iterating
Change-Id: I8ba5e7532bb34ac1d941ad1761cc1e6601d7020f
Signed-off-by: Diego Granados <[email protected]>
venkatamahesh [Fri, 18 Nov 2016 10:30:19 +0000 (16:00 +0530)]
BUG 7204 : Typo in method names of sfc-vnfm-tacker
There is a typo in method names of sfc-vnfm-tacker
In this patch it is changed accordingly
Change-Id: I5f2b66979ce9944cb753d68a124b91024cc8c30c
Signed-off-by: venkatamahesh kotha <[email protected]>
eceabpe [Thu, 1 Dec 2016 15:24:19 +0000 (16:24 +0100)]
BUG 4221 When deleting a RSP remove symmetric path if necessary
Solution and Unit Test for:
Bug 4221 - When deleting a RSP need to remove symmetric path if it exists
Change-Id: I0466a357eb39b5229ee2f7769285f7184f421bbc
Signed-off-by: eceabpe <[email protected]>
Srihari Raghavan [Tue, 29 Nov 2016 09:17:46 +0000 (14:47 +0530)]
Updates to SFC Proof of Transit feature.
1. Add RPC trigger to enable SFC Proof of Transit feature.
2. Add changes to handle RPC trigger to enable the feature.
3. Augmentation updates to RSP.
4. Add unit tests to verify the changes.
5. Design guide and documentation: https://github.com/ciscoDevNet/iOAM
Change-Id: I195c9b83fb16a5789eab704b862dc918a110344b
Signed-off-by: Srihari Raghavan <[email protected]>
Vratko Polak [Mon, 12 Dec 2016 15:02:52 +0000 (16:02 +0100)]
Remove sfc-provider-impl capability from sfc-test-consumer-initial.xml
sfc-provider-impl has been migrated to Blueprint,
so the capability will never appear.
Change-Id: Id14ea9529e8928815fd8f933298bc3f34acfae9f
Signed-off-by: Vratko Polak <[email protected]>
David Suarez [Wed, 7 Dec 2016 23:47:58 +0000 (00:47 +0100)]
Remove sfc-bootstrap module
Since SFC is already using Blueprint as dependency injection framework,
the sfc-bootstrap module is not needed anymore.
Change-Id: I2e16c4fe6994c54c8b640d3a18c46a9374136b50
Signed-off-by: David Suarez <[email protected]>
Alberto Quintana Heras [Fri, 9 Dec 2016 07:24:39 +0000 (08:24 +0100)]
BUG 7269: System Info tab,no data displayed
Added parameter to call SfcRestangularSvc.getCurrentInstance().oneUrl
When enter to System Info tab, debugging javascript, an error
is displayed in the console.
Change-Id: Ic86186e0fd89cfbee01cab8db7a3b8864ef1a6cb
Signed-off-by: Alberto Quintana Heras <[email protected]>
Brady Johnson [Fri, 9 Dec 2016 08:51:30 +0000 (08:51 +0000)]
Merge "Fix clearly badly broken Blueprint wiring"
Michael Vorburger [Thu, 8 Dec 2016 14:42:22 +0000 (15:42 +0100)]
Fix clearly badly broken Blueprint wiring
Unable to find property descriptor dataProvider on class
org.opendaylight.sfc.sfc_netconf.provider.api.SfcNetconfServiceFunctionAPI
org.osgi.service.blueprint.container.ComponentDefinitionException: Unable
to find property descriptor dataProvider on class
org.opendaylight.sfc.sfc_netconf.provider.api.SfcNetconfServiceFunctionAPI
Indeed SfcNetconfServiceFunctionAPI's setDataProvider() method is static,
so you cannot do <property name="dataProvider" ref="dataBroker"/> for
<bean id="sfcnetconfservicefunctionapi"
class="org.opendaylight.sfc.sfc_netconf.provider.api.SfcNetconfServiceFunctionAPI">
Thus, at the very least, you would need a fake non-static setter there,
(although that's very ugly, static-is-evil; but that's beyond this change).
Change-Id: I6cc200b0e0fbde25ae3c9bf637272a4362479e07
Signed-off-by: Michael Vorburger <[email protected]>
Brady Johnson [Thu, 17 Nov 2016 14:14:28 +0000 (15:14 +0100)]
Minor refactor of the VPP Renderer
- removing circular dependencies between listener and renderer packages
- changing listeners to use AbstractDataTreeChangeListener
- patchSet 4: changes due to code review comments
Change-Id: Ie97634be1cfdbe014df771b65bc501e4128eec1c
Signed-off-by: Brady Johnson <[email protected]>
Jaime Caamaño Ruiz [Thu, 24 Nov 2016 13:50:10 +0000 (14:50 +0100)]
BUG 6347: Fine tune RSP removal on SFF update
Remove only RSPs affected by SFF dictionary change. If a dictionary
entry is changed or removed, an RSP with a hop on that SFF for the SF
corresponding to that dictionary entry will be removed. Otherwise, it
won't be removed for such a change.
Change-Id: I945bb725f620fd48d5e9bb279b27bdedf43831db
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
Michal Rehak [Wed, 30 Nov 2016 14:14:53 +0000 (15:14 +0100)]
Fix comparison of required and available capabilities
- upon netconf node capabilities are compared. But
because of model change in netconf available
capabilities are no longer plain list of strings.
Currently netconf provides a AvailableCapability
object with additional leaves and string names
must be extracted first and then compared.
Change-Id: Ia4e17a55cc8ab04714fb5b53a882e148593089ad
Signed-off-by: Michal Rehak <[email protected]>
venkatamahesh [Tue, 29 Nov 2016 08:46:31 +0000 (14:16 +0530)]
BUG 7243 : Modify the checkbox text color to be visible
At present the text is not visible as it sync with background
color. In this patch I have modified to be visible to users
Change-Id: I2ecc90b42a4664610e188b21c4c225ee586ed1f5
Signed-off-by: venkatamahesh kotha <[email protected]>
Jaime Caamaño Ruiz [Mon, 28 Nov 2016 19:07:25 +0000 (20:07 +0100)]
Add empty checkstyle-suppressions.xml
Due to change 48715 [0] in odlparent, now checkstyle configuration
inherited from odlparent looks for a checkstyle-suppressions.xml file.
Rather than overriding the configuration, an empty file to add
exceptions in the future is added. This fixes a build failure.
[0] https://git.opendaylight.org/gerrit/#/c/48715/
Change-Id: I4aa18385c73b2f7f25373a4affb56fab23efee18
Signed-off-by: Jaime Caamaño Ruiz <[email protected]>
Brady Johnson [Mon, 28 Nov 2016 09:58:47 +0000 (09:58 +0000)]
Merge "BUG 7242 : Correction in the command for starting sfc_agent"
Brady Johnson [Mon, 28 Nov 2016 09:54:51 +0000 (09:54 +0000)]
Merge "Integrate classifier w/ genius - commit #3"
venkatamahesh [Fri, 25 Nov 2016 13:19:20 +0000 (18:49 +0530)]
BUG 7242 : Correction in the command for starting sfc_agent
When we execute with the specified command it is throwing error
as we are not specifying .py to sfc_agent. If we execute with
.py extension there is no errors
Change-Id: Iba8bf04d8e74d84e3109bf48470f61576eddc90a
Signed-off-by: venkatamahesh kotha <[email protected]>
Miguel Duarte [Fri, 18 Nov 2016 12:36:50 +0000 (13:36 +0100)]
Integrate classifier w/ genius - commit #3
This commit finishes the integration of the current SFC classifier w/
genius.
The remaining methods of the API providing in the previous commits are
implemented, specifically:
The genius service binding w/ the interfaces to classify is finished,
and is called from the OpenflowClassifierProcessor.
The LogicalClassifierDataGetter is finished, providing all necessary
data-retrieval methods required by the LogicallyAttachedClassifier.
The flow generation logic made in the LogicallyAttachedClassifier is
finished.
Unit testing of the remaining classes is added.
Quicker bail-out of the openflowWriter when no flows are to be writen or
deleted.
Change-Id: I52755b98fc3eeb2f78c8afd90f4d83c6f65ae527
Signed-off-by: Miguel Duarte <[email protected]>
swatideshpande [Thu, 24 Nov 2016 18:57:39 +0000 (10:57 -0800)]
BUG 7171: ACL configuration via GUI Broken
The current yang model for ACLs is ietf-access-control-list(2016-02-18).
sfc-ui, is constructing ACL requests as per
ietf-acces-control-list(2015-03-17)causing breakage.
The acl key has changed from "acl-name" to "acl-type acl-name",
in Rev 2016-02-18.
Fix done in sfc-ui module for acl key change as well as schema change
for all ietf-access-list config requests.
Input box added to "Create Access List" screen for configuring ACL Type.
Fix added for service-classifier requests to adhere to yang model Rev
service-function-classifier(2014-07-01)
Change-Id: I7947047d1cf08fbb8104f040de04d786e9faefa1
Signed-off-by: swatideshpande <[email protected]>
Yi Yang [Fri, 25 Nov 2016 01:27:44 +0000 (01:27 +0000)]
Merge "Integrate classifier w/ genius - commit #2"
guillermo tomasini [Thu, 24 Nov 2016 14:49:06 +0000 (15:49 +0100)]
Redundant if(x>0) brushing befor for( ;x<0; )
Change-Id: I2477c76b1558ca49aec4a0946efa37325728cd0c
Author: Guillermo Tomasini <
[email protected]>
Signed-off-by: guillermo tomasini <[email protected]>
Miguel Duarte [Fri, 18 Nov 2016 11:26:32 +0000 (12:26 +0100)]
Integrate classifier w/ genius - commit #2
Major refactor of the SfcScfOfProcessor class, which had too many
responsabilities. These were split among the following classes:
SfcScfOfProcessor:
Processes adding classifier flows into a number of OVS switches.
Client of the OpenflowClassifierProcessor class, from which it gets
a list of all the flows to install among the OVSs, writing them in a
single transaction object.
OpenflowClassifierProcessor:
Encapsulates a transaction object, and processes the creation of
ACLs (along w/ respective ACEs) into the OVS switches.
Client of the LogicallyAttachedClassifier class.
ClassifierInterface:
Responsible for building the classifier flows required for the
logical SFF feature. WIP, and will feature in the next commit.
There are 2 types of ClassifierInterface:
- LogicallyAttachedClassifier - empty implementation; will be uploaded
in the next commit
- BareClassifier - 'Legacy' scenario, moved into a wrapper class
LogicalClassifierDataGetter:
Utility class used to fetch data relevant to the OpenflowClassifier
Processor and the LogicallyAttached classifier.
Encapsulates the genius RPC, and fetches data from genius, SFC, and
IETF data models. WIP, and will feature in the next commit.
The SfcScfOfUtils are also refactored, building the required flows, so
that the SfcScfOfProcessor can install them afterwards, in a single
transaction object.
Blueprint injection of the RpcProvider (required for the logical SFF
feature).
Add unit testing of the legacy scenarios, and well as w/ DPDK flow
generation.
In this commit, while the way the classifier works is drastically
changed, no new functionallity is added. It finished paving the way
for integrating the new feature, making it easier to be understood,
and easier to unit test.
In the next - and last - commit, I will complete the APIs of the
forementioned classes, thus enabling the classifier to be attached
to a logical SFF.
Change-Id: I8c59078b8b04b4e8cb49e85a779f2d4940c1e546
Signed-off-by: Miguel Duarte <[email protected]>
Yi Yang [Thu, 24 Nov 2016 07:49:39 +0000 (15:49 +0800)]
sfc104 demo: check openflow renderer and sfc classifier initialization
- sleep longer time for vpp node connection
- check openflow renderer and sfc classifier initialization
Change-Id: Ia77b930ed4412306bce4523e1d4ee4461e075c35
Signed-off-by: Yi Yang <[email protected]>
Yi Yang [Thu, 24 Nov 2016 07:32:26 +0000 (15:32 +0800)]
vpp renderer: fix netconf node capabilities check issue
netconf project commit
ebce6c1ba9a22e420c87b45e5b20501dc7047730
broke vpp renderer, it changed netconf node topology model
, vpp renderer is using it to check if a netconf node is vpp
node or not.
This fix is to adapt to new netconf node topology model, it has
been verified in sfc104 vpp demo.
Change-Id: I191fdb298d560b207ab2cc20fc9e13f2f9730ebe
Signed-off-by: Yi Yang <[email protected]>
Brady Johnson [Mon, 21 Nov 2016 11:17:52 +0000 (12:17 +0100)]
Minor cleanup of sfc-provider unit tests
- removed all warnings
- removed old references to the removed OpendaylightSfc class
- removed duplicate entry in sfc-model/pom.xml
- patchSet 2: addressed code review comments
Change-Id: I149acf7c7e84ee98ffe12f2604bc15a78a87846f
Signed-off-by: Brady Johnson <[email protected]>
Miguel Duarte [Fri, 18 Nov 2016 11:35:40 +0000 (12:35 +0100)]
Fix a bug in the refactored ScfListener
The SfcScfOfDataListener was recently refactored, replacing the
onDataChanged notification method by an onDataTreeChanged method.
In that change, the lines that initializes/closes the listeners got
lost, making the SCF feature deaf/blind to classifiers being added /
deleted.
Change-Id: I77104b30c87939156cd4458fef4a6f9859bbbabe
Signed-off-by: Miguel Duarte <[email protected]>
George Paraskevopoulos [Fri, 18 Nov 2016 10:08:39 +0000 (12:08 +0200)]
Remove flake8 warnings from sfc-test
Change-Id: Ie2a1bcd11ee6095e62158ffaf9cb24246f588967
Signed-off-by: George Paraskevopoulos <[email protected]>
venkatamahesh [Thu, 17 Nov 2016 12:32:45 +0000 (18:02 +0530)]
BUG 7196 : Doc style changes to README file
At present the commands in this file are combined with
text lines. In this patch I have modified the style to
quick understanding.
Signed-off-by: venkatamahesh kotha <[email protected]>
Change-Id: I60d163b94b649f6bafc40abaf00c7a8e75b5ba84
Brady Johnson [Wed, 16 Nov 2016 09:08:19 +0000 (10:08 +0100)]
Removing last parts of the old renamed SFCOFL2 feature
- The feature was still in the karaf features as deprecated.
It has now been removed.
- There was a stale reference to sfcofl2 in the pom.xml
Change-Id: I88b465977fd4cc65872e30763113c09114dae987
Signed-off-by: Brady Johnson <[email protected]>
Ursicio Martin [Wed, 16 Nov 2016 13:52:29 +0000 (14:52 +0100)]
Replace onDataChanged method in SfcScfOfDataListener
Change-Id: I3bf931099d86287cf0deeba68c1406b8dc658fc7
Signed-off-by: Ursicio Martin <[email protected]>
swatideshpande [Wed, 16 Nov 2016 12:33:13 +0000 (04:33 -0800)]
No prefix required for type parameter of SF
sfc-ui,is adding prefix "service-function-type:" for SF type.
i.e if Service Function type is selected as 'firewall',SF type gets set
as "type":"service-function-type:firewall".
The prefix is not required to be added, it suffices to set type as
firewall/dpi/ids etc. The prefix is causing SF creation failure in
sfc_agent.
Bug:7179
Change-Id: I26381def21b987ff9b1ef46a0493791222e76ddd
Signed-off-by: swatideshpande <[email protected]>
eceujmm [Thu, 3 Nov 2016 14:19:39 +0000 (15:19 +0100)]
New configuration examples for SFC - Logical SFF
Change-Id: I07699cdd531576de3f030d22bc6cdc52bca54a26
Signed-off-by: eceujmm <[email protected]>
David Suarez [Mon, 14 Nov 2016 16:06:03 +0000 (17:06 +0100)]
Add XML encoding to pom.xml and formatting.
Change-Id: I5eef334cb47ae509dba0bdb0d946fa283adc7476
Signed-off-by: David Suarez <[email protected]>
Miguel Duarte [Fri, 11 Nov 2016 13:14:01 +0000 (14:14 +0100)]
Integrate classifier w/ genius - commit #1
For the logical SFF feature, the existent SFC classifier has to be
integrated w/ genius, for 2 reasons:
- currently, it writes to table 0, which is owned by genius. It should
write to a different table
- logical sff requires the classifier to steer packets based on the
dpn IDs of the OVS switches hosted in the compute nodes where the
classifier / first SFF are located
This commit prepares the ground for that functionality, which will be
added in the next commit.
The genius service binding is exposed as an API, thus
enabling the classifier to leverage it.
The openflow writer, is also exposed as an API, thus enabling the
classifier to also leverage its functionallity (install multiple flows
within the same transaction object).
- Trasactional support for the classifier was not used, but for
logical SFF scenarios *is* required, because we cannot bind an
interface to genius and not install its respective flows.
Additionally, the TableIndexMapper is also modified, registering the
classifier table.
Finally, the one of the geniusRPCs is also modified, allowing for an
offset to be added - this way, the actions gotten from genius can be
appended to another list of actions.
Change-Id: If849f5f3f66ef295c48d76e0bc52d9b57d8891c4
Signed-off-by: Miguel Duarte <[email protected]>
eceujmm [Thu, 10 Nov 2016 14:34:39 +0000 (15:34 +0100)]
Replace deprecated DataChangeListener in SF Scheduler Type
Change-Id: I793dda563e6e4788d8f5bbb6d1b36dc4cf4828f7
Signed-off-by: eceujmm <[email protected]>