98 Commits

Author SHA1 Message Date
jcc
3d4e14a72b FlowRule private extension refactor.
1.merge private flow into regular flowrule subsystem.no mirror code any
more.no change flowrule api.
2.define a rich-data-type to carry private flow.
3.modify OpenFlowRuleProvider.class to support for 3rd party private
flow.i don't know whether is suitable.because this class name is
relative with open flow protocal.
4.fix some junit test bug caused by modification of FlowRule interface.

Change-Id: I6c54d1e97f231a75bd1b416f0893e0379613d7ce
2015-04-23 04:11:34 +00:00
alshabib
08d9898714 FlowRule api no longer uses TableTypes. Existing usages are converted to
integer representations via Type.ordinal() call

Change-Id: Ie2a26c5ced166e12f0e1ea22e39cd5195455a1ad
2015-04-21 23:52:19 +00:00
alshabib
db7740788c Introduced a builder for flowrules and deprecated the old flowrule constructors.
Change-Id: I4bf6e102c67c2effd0d8b65538fcf3a8a1db69e1
2015-04-21 15:00:49 +00:00
Ray Milkey
674dd8b670 Enable Intent REST API tests
Change-Id: If371887de4ad57a6d0fdd9fd5bb87426bb2742db
2015-04-17 10:50:04 -07:00
Ray Milkey
34c959066d ONOS-533 Fix copyrights
- Any files created in 2014 and modified in 2015 got a copyright of
  2014-2015
- Used canonical form of 2014-2015 to be inclusive of extra years.
  Some files had 2014,2015

Change-Id: If9a133618873e4000b8f10299bde7c870eb1fbd5
2015-04-15 17:41:07 +00:00
Thomas Vachuska
c40d463c27 Consolidating null providers and making them fully configurable and integrated with the ConfigProvider to allow arbitrary topologies.
Change-Id: I899e27a9771af4013a3ce6da7f683a4927ffb438
2015-04-14 01:23:24 -07:00
Ray Milkey
a0cecdc9cf Fix for ONOS-1595 - return proper status (405) when using an unsupported method
Change-Id: I66fe2d4783364d5a5b8cccba15115c818ed3a3b3
2015-04-09 17:55:52 +00:00
HIGUCHI Yuta
5bb99a4015 Add support to decode Device, Port, Link JSON.
- Device, Port, Link can now be encoded and decoded back to Java Object,
  which will be Object#equals to the original.
- Modified DeviceServiceAdapter to be null-safe when possible
- Modified JSON assertion/matcher not to check for exact number of attributes

Change-Id: I7cf02e2254cf17f6265fb15847912519e564b14f
2015-04-09 06:08:29 +00:00
Thomas Vachuska
f8cac48255 Mild REST API refactoring.
Change-Id: Ieddbbd02328043118ad64077f8eda746eb2b3a9f
2015-04-09 03:04:22 +00:00
Thomas Vachuska
51979284a6 ONOS-1470 Added unit tests for component config REST API.
Change-Id: Id08c629cefff1a1276e6be7c07ea62e4ae89468a
2015-04-07 18:49:17 -07:00
Thomas Vachuska
e6847431fe ONOS-1470 Implemented component config REST API.
Change-Id: I637456a1dfd364ff3184cded8a5e8b251afc9987
2015-04-07 23:42:19 +00:00
Thomas Vachuska
de563cf235 Added ability to form a cluster via REST API.
Change-Id: Ib71f6b4caed1b1c4b9db78596ee35bf5cab05184
2015-04-01 20:39:37 +00:00
Ray Milkey
4250735018 Remove deprecated instructions() method in the traffic treatment class
Change-Id: I739b35bdcbf9867c639c7b6ca4006f3eeafbb055
2015-03-24 18:18:28 +00:00
Ray Milkey
67c22726a2 ONOS-1242 - REST API for Withdrawing Intents
- upgraded Jersey to 1.19 for some REST bug fixes for Java 8
- consolidated references to Jersey by using the dependecy
  management plugin in the top level pom file.

Change-Id: Ic027f97f8fce6c673c9f2c02a92abaeedfedeb97
2015-03-23 20:40:33 +00:00
Thomas Vachuska
8683e01678 Fixing codec usage.
Change-Id: I9101296a7ec4d4b13bf11df3e49e17afad79405e
2015-03-19 01:40:30 +00:00
HIGUCHI Yuta
3c994f7e8c ONOS-1329: Migrate Codec related code to onos-core-common bundle
- removed unused dependency to onos-core-trivial tests

Change-Id: I0f13cff6cc99403f7c0e0d7362f83d0ba557f10b
2015-03-19 00:42:52 +00:00
Ray Milkey
3e3ec5f786 [Cardinal] Add builders for Intents and remove extra constructors.
Starting with PointToPoint intent to see how it looks

Change-Id: I5366a05d657ceaad18c03b95cd71f5d1107200e2
2015-03-18 22:17:54 +00:00
Brian O'Connor
6ea48a22fe Starting snapshot 1.2.0-SNAPSHOT
Change-Id: Iffa1055c22448849353ede6581c277f4d3de78d8
2015-03-17 20:07:20 -07:00
Brian O'Connor
91d9019b24 Tagging ONOS Blackbird release: 1.1.0
Change-Id: Iee1accb8f83e03a1c4b2250d36d48aefd6383c97
2015-03-17 19:45:58 -07:00
Brian O'Connor
1545b1ef08 Starting snapshot 1.1.0-SNAPSHOT
Change-Id: I8caca4df60027426c18b51c1b35c313fe9ac1c10
2015-03-11 16:38:23 -07:00
Brian O'Connor
20fa3a45f9 Tagging 1.1.0-rc2
Change-Id: I1fa0feb1b790f79baa465fd82965433e109b34b2
2015-03-11 16:23:07 -07:00
Ray Milkey
c24cde3305 Add priority to Intents
Change-Id: Ibe63356f5b15a6aa6ca7731dba3382c3317a95ec
2015-03-11 02:14:30 +00:00
Brian O'Connor
6b5281356b Adding emptyTreatment() and emptySelector()
Note: There was a change that adds a DROP action to
a traffic treatment if there are no other actions present.
To get a traffic treatment without the drop rule, use
emptyTreatment()

Change-Id: I1f23ed5e1fa7519eb94fcafa85facbad815d5e9c
2015-03-10 16:48:45 -07:00
Abhishek Dwaraki
1e5873e94d ONOS-400 Topology creation and up time formatting fixes
Change-Id: Iaf6d4dbbc1c7eaae9465a2d931d40f07a75ad07d
2015-03-09 22:50:23 +00:00
alshabib
346b5b362d Traffic Treatements now support deferred, immediate, table, and clear instructions.
By default, treatments are all immediate. Treatments will be deferred if the builder
predicated by deferred(). Subsequent treatments will be deferred until immediate is called
on the builder again. Multiple calls to deferred and immediate are permitted.

Change-Id: I76b3a44f2219fc1e72a7fb41b72d7bd602be85b7
2015-03-09 18:28:58 +00:00
Brian O'Connor
266ac66643 Starting snapshot 1.1.0-SNAPSHOT
Change-Id: I2abf73c248c04f0559f97b313be034b48761695a
2015-03-01 07:36:09 +00:00
Brian O'Connor
352236e289 Tagging 1.1.0-rc1
Change-Id: I9c95f8309e1c98bc1a25eeaad1962b4d28257261
2015-03-01 07:36:08 +00:00
Ray Milkey
43a2822c10 Refactor tests to use shared mock implementations
Change-Id: Iba4e44b7bb88f8a31add9475a9155f85375ae61a
2015-02-23 22:44:24 +00:00
Thomas Vachuska
93da11f8b5 Providing sample web.xml configuration for enabling basic authentication of REST API & GUI.
Change-Id: I1ee8853945611d7778a4a4dc38883cfe266a5efa
2015-02-23 18:22:53 +00:00
Pavlin Radoslavov
ab8553a52a Fix a bug: there are two ECN bits in the IPv4 header, not three.
Change-Id: Ibdfce817f2a506644e0f9cd16f46cf6ab1f75eb7
2015-02-20 14:13:50 -08:00
Yuta HIGUCHI
6a47964aad Instruction related fixes
- Removed redundant equality check. (ONOS-975)
- Enforced using Instruction Factory methods.
- cosmetic fixes.

Change-Id: I178b55f8568c1a9132f0aa88465b8b34dc2b2df2
2015-02-20 19:12:19 +00:00
Ray Milkey
cc53abd74e Favor adapter classes over service interfaces in unit tests
In unit tests that are mocking an entire interface, instead
extend the Adapter class so the unused method overrides
are no longer needed.

Change-Id: I6e332cc5cb59410f163deea223fbc94e73d83917
2015-02-20 00:35:32 +00:00
Thomas Vachuska
62ad95f3f1 Added ability to upload apps as both app.xml or app.zip.
Added a number of app.xml files for built-in apps.
Added ability to install & activate in one command.

Change-Id: I3fa5fa487ef76d9fe3da4d6dce8045d538cba423
2015-02-18 21:33:52 +00:00
Yuta HIGUCHI
179f3775e3 Fix boxing/unboxing to parse a primitive
Change-Id: I83f6beac585f8b6b28a95080783e5ca51454fbfe
2015-02-18 17:28:39 +09:00
Michele Santuari
4b6019e449 ONOS-631 #Initial MPLS intent implementation
Change-Id: I6f906b953f06f395cc67e612648802e333c0e581
2015-02-14 10:00:48 +00:00
Ayaka Koshibe
c06c89bfe8 REST API modifications to take application ID/Kep pair to fetch intents.
Change-Id: Icee85c6d801c92d94c6905f1d4316f63fea4e560
Reference: ONOS-1007
2015-02-13 14:13:55 -08:00
Jonathan Hart
4fd4ebb9d0 Continue updating GossipIntentStore to new API.
Includes changes to ECMap to support generating timestamps based on values.

Change-Id: Ide55979aaa4f7757e67a6b3efed6e51d45ee318c
2015-02-13 14:12:30 -08:00
Ray Milkey
f9af43c2ea Refactoring of IntentId based APIs
- getIntent
- getIntentState
- getInstallableIntents

Change-Id: I6d2073dfa165e0e5adcef46fe5908b563b481a43
2015-02-13 14:10:55 -08:00
Pavlin Radoslavov
febe82cc82 Implement some of the missing IPv6 flowmod treatments
Work toward ONOS-509

The following treatments are added/implemented:
  - IPV6_SRC
  - IPV6_DST
  - IPV6_FLABEL

Also:
 - Renamed L3ModificationInstruction.L3SubType.IP_SRC and IP_DST
   to IPV4_SRC and IPV4_DST (for naming consistency).
 - Few minor fixes in related code: Javadocs, comments, log messages,
   and IP address usage.

Change-Id: I551056f767a37e7cb6ae7d79f4a3929183500b57
2015-02-12 18:24:54 +00:00
Ray Milkey
0cc189e681 Add a test for unsupported criterion type
Change-Id: I0820b8f7fe9a375554721438284b5e9352c289b2
2015-02-09 11:14:42 -08:00
Ray Milkey
46670a881f Refactor criterion codec test and matcher
- codec test now uses the json matcher rather than comparing itself
- refactored the codec matcher to be less ugly
- fixed a bug in how eth types are compared

Change-Id: Iaf9980c52e98518405a23d2cdde7ccd7d4afaa9b
2015-02-09 09:59:03 -08:00
Pavlin Radoslavov
5e4f754f19 Implement some of the missing Selector and Match Conditions
Work toward ONOS-509

The following match conditions are added/implemented:
  - IPV6_EXTHDR

Also, fixed the match criteria for the optical signal type
to represent unsigned 8 bits integer (per spec).

Change-Id: I925db19cb43c5d9f589c1f090b6a75faabe0a19b
2015-02-09 01:20:09 +00:00
Pavlin Radoslavov
f3b693381d Fix toward ONOS-960 - Signed/unsigned value mismatch for OpenFlow-related
match/action conditions

Fixed the signed/unsigned issue for the match conditions

Also:
  * Reordered some of the code in CriterionCodec.java so the order
    of handling various Criterion types follows the order as defined in
    Criterion.java
    - In the process, removed a duplicated entry for Type.MPLS_LABE
    - Fixed an issue with TCP/UDP/SCTP ports being accessed as 8-bit integers
      instead of 16-bit integers

  * Updated some of the unit tests in CriterionCodecTest.java to use
    larger integer values that could expose better potential bugs in
    the tested code.

Change-Id: I531d13bd258ebc559ce6be716863c01613427a98
2015-02-09 01:16:31 +00:00
Yuta HIGUCHI
32a53c5a85 Instruction related fixes
- Fixed PushHeaderInstructions bug, where half-baked Ethernet instace was used
  only to hold ethernetType. (ONOS-987)

Change-Id: I330a862c8a18206250befbd4e22ee6d189beed83
2015-02-08 01:41:43 -08:00
Ray Milkey
9ee62f52f2 add unit test for criterion codec
Change-Id: I0797c164dbbc03cd46a9d861e758f85cd27845d6
2015-02-06 14:52:07 -08:00
Ray Milkey
73ba84aa42 Refactor criterion codec
The previous implementation was a huge switch statement. These
changes attempt to use polymorphism to avoid all of the branching
inherent in a switch.

Change-Id: If997f028346de02b883356bcde07f62674e319be
2015-02-06 10:02:26 -08:00
Ray Milkey
ed0b1663ab Fix tests that were hiding the setUp() mthod in the JerseyTest framework
REST API tests were defining a set up method called setUp(), which had
the unwanted side effect of hinding the parent class' implementation.
Made the set up and tear down methods for the tests have unique names so
both will be executed.

Also fixed some javadocs while editing the files.

Change-Id: Ifaa75fe650d5909b066769e5e12cb5c834267a20
2015-02-05 18:25:54 +00:00
Yuta HIGUCHI
293ede0bcf Workaround for ambiguous isA method
- Eclipse complains isA() is ambiguous.
  'isA' method does exist in both EasyMock and hamcrest Matcher.

Change-Id: I6b98dbe1b4f1f0ce4fcbc2dcaded9b666fc19b33
2015-02-05 00:08:41 -08:00
Pavlin Radoslavov
d0fd841978 Implement some of the missing Selector and Match Conditions
Work toward ONOS-509

The following match conditions are added/implemented:
  - IN_PHY_PORT
  - IP_DSCP
  - IP_ECN
  - METADATA

Change-Id: I6f529ee90b2b9e0d5046f83c034e8be3faf86d8b
2015-02-05 05:44:00 +00:00
Thomas Vachuska
ebf5e54d44 ONOS-542 Added ability for app bundle to carry it's own artifacts, including feature repo. Fixed onos-package script. Added JSON output to CLI.
Change-Id: If4f2c774d3fc2d68c0a8e91b3084b99d7c75d927
2015-02-05 05:22:53 +00:00