package org.opendaylight.openflowplugin.impl.registry.meter;
-import com.google.common.collect.ImmutableList;
import java.util.ArrayList;
import java.util.List;
import org.opendaylight.openflowplugin.api.openflow.registry.meter.DeviceMeterRegistry;
*/
public class DeviceMeterRegistryImpl implements DeviceMeterRegistry {
- private final List<MeterId> meterIds = new ArrayList();
- private final List<MeterId> marks = new ArrayList();
+ private final List<MeterId> meterIds = new ArrayList<>();
+ private final List<MeterId> marks = new ArrayList<>();
@Override
public void store(final MeterId meterId) {
@Override
public void removeMarked() {
- meterIds.removeAll(marks);
- marks.clear();
+ synchronized (meterIds) {
+ meterIds.removeAll(marks);
+ }
+ synchronized (marks) {
+ marks.clear();
+ }
}
@Override
public List<MeterId> getAllMeterIds() {
- return ImmutableList.copyOf(meterIds);
+ return meterIds;
}
@Override
public void close() throws Exception {
- meterIds.clear();
- marks.clear();
+ synchronized (meterIds) {
+ meterIds.clear();
+ }
+ synchronized (marks) {
+ marks.clear();
+ }
}
}