tree 4ca7d3d9d8d4f0491c6cc7791230c55140774140
parent 4baf78adcb16f2f6fa2758d3617e506854a9ecfe
author Ray Milkey <ray@opennetworking.org> 1549657779 -0800
committer Thomas Vachuska <tom@opennetworking.org> 1550166163 +0000

Remove deprecated APIs

- Storage Admin Service getPartitionInfo()
- org.onosproject.codec.ExtensionSelectorCodec
- org.onosproject.codec.ExtensionTreatmentCodec
- DefaultPortDescription builder withPortNumer()
- DefaultTableStatisticsEntry public constructors
- IntentData public constructors and copy constructors
- DistributedPrimitiveOptions withMeteringDisbled()
- PartitionService getActiveMembersMembers(), getDistributedPrimitiveCreator()
- DistributedPrimitive DEFAULT_OPERTATION_TIMEOU_MILLIS
- MapEvent.value()
- PartitionClientInfo.sessionId(), session()
- org.onosproject.store.flow.impl.DistributedFlowRuleStore

Change-Id: Id89870e6facf1e7fca24dd180bbd095139d001f3
