Committed by
Gerrit Code Review
Add getMeters method for obtaining meter collection by device id
Change-Id: Ie5137ef8acce7643a58c2faa00b7027e3b9f38fa
Showing
2 changed files
with
14 additions
and
1 deletions
| ... | @@ -60,4 +60,11 @@ public interface MeterService | ... | @@ -60,4 +60,11 @@ public interface MeterService |
| 60 | */ | 60 | */ |
| 61 | Collection<Meter> getAllMeters(); | 61 | Collection<Meter> getAllMeters(); |
| 62 | 62 | ||
| 63 | + /** | ||
| 64 | + * Fetches the meters by the device id. | ||
| 65 | + * | ||
| 66 | + * @param deviceId a device id | ||
| 67 | + * @return a collection of meters | ||
| 68 | + */ | ||
| 69 | + Collection<Meter> getMeters(DeviceId deviceId); | ||
| 63 | } | 70 | } | ... | ... |
| ... | @@ -23,6 +23,7 @@ import org.apache.felix.scr.annotations.Reference; | ... | @@ -23,6 +23,7 @@ import org.apache.felix.scr.annotations.Reference; |
| 23 | import org.apache.felix.scr.annotations.ReferenceCardinality; | 23 | import org.apache.felix.scr.annotations.ReferenceCardinality; |
| 24 | import org.apache.felix.scr.annotations.Service; | 24 | import org.apache.felix.scr.annotations.Service; |
| 25 | import org.onlab.util.TriConsumer; | 25 | import org.onlab.util.TriConsumer; |
| 26 | +import org.onosproject.net.DeviceId; | ||
| 26 | import org.onosproject.net.meter.DefaultMeter; | 27 | import org.onosproject.net.meter.DefaultMeter; |
| 27 | import org.onosproject.net.meter.Meter; | 28 | import org.onosproject.net.meter.Meter; |
| 28 | import org.onosproject.net.meter.MeterEvent; | 29 | import org.onosproject.net.meter.MeterEvent; |
| ... | @@ -40,7 +41,6 @@ import org.onosproject.net.meter.MeterState; | ... | @@ -40,7 +41,6 @@ import org.onosproject.net.meter.MeterState; |
| 40 | import org.onosproject.net.meter.MeterStore; | 41 | import org.onosproject.net.meter.MeterStore; |
| 41 | import org.onosproject.net.meter.MeterStoreDelegate; | 42 | import org.onosproject.net.meter.MeterStoreDelegate; |
| 42 | import org.onosproject.net.meter.MeterStoreResult; | 43 | import org.onosproject.net.meter.MeterStoreResult; |
| 43 | -import org.onosproject.net.DeviceId; | ||
| 44 | import org.onosproject.net.provider.AbstractListenerProviderRegistry; | 44 | import org.onosproject.net.provider.AbstractListenerProviderRegistry; |
| 45 | import org.onosproject.net.provider.AbstractProviderService; | 45 | import org.onosproject.net.provider.AbstractProviderService; |
| 46 | import org.onosproject.store.service.AtomicCounter; | 46 | import org.onosproject.store.service.AtomicCounter; |
| ... | @@ -160,6 +160,12 @@ public class MeterManager extends AbstractListenerProviderRegistry<MeterEvent, M | ... | @@ -160,6 +160,12 @@ public class MeterManager extends AbstractListenerProviderRegistry<MeterEvent, M |
| 160 | } | 160 | } |
| 161 | 161 | ||
| 162 | @Override | 162 | @Override |
| 163 | + public Collection<Meter> getMeters(DeviceId deviceId) { | ||
| 164 | + return store.getAllMeters().stream().filter(m -> | ||
| 165 | + m.deviceId().equals(deviceId)).collect(Collectors.toList()); | ||
| 166 | + } | ||
| 167 | + | ||
| 168 | + @Override | ||
| 163 | public Collection<Meter> getAllMeters() { | 169 | public Collection<Meter> getAllMeters() { |
| 164 | return store.getAllMeters(); | 170 | return store.getAllMeters(); |
| 165 | } | 171 | } | ... | ... |
-
Please register or login to post a comment