Merge "Use ${project.version} for internal dependencies"
[ovsdb.git] / openstack / net-virt-sfc / impl / src / main / java / org / opendaylight / ovsdb / openstack / netvirt / sfc / NetvirtSfcAclDataProcessor.java
1 /*
2  * Copyright © 2015, 2016 Dell, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.ovsdb.openstack.netvirt.sfc;
10
11 import com.google.common.base.Preconditions;
12 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev150317.access.lists.Acl;
13 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
14
15 /**
16  * Data processor for AccessList.
17  */
18 public class NetvirtSfcAclDataProcessor implements INetvirtSfcDataProcessor<Acl> {
19     private final INetvirtSfcOF13Provider provider;
20
21     /**
22      * {@link NetvirtSfcAclDataProcessor} constructor.
23      * @param provider OpenFlow 1.3 Provider
24      */
25     public NetvirtSfcAclDataProcessor(final INetvirtSfcOF13Provider provider) {
26         this.provider = Preconditions.checkNotNull(provider, "Provider can not be null!");
27     }
28
29     @Override
30     public void remove(final InstanceIdentifier<Acl> identifier,
31                        final Acl change) {
32         Preconditions.checkNotNull(change, "Removed object can not be null!");
33         provider.removeClassifierRules(change);
34     }
35
36     @Override
37     public void update(final InstanceIdentifier<Acl> identifier,
38                        final Acl original, final Acl change) {
39         Preconditions.checkNotNull(original, "Updated original object can not be null!");
40         Preconditions.checkNotNull(original, "Updated update object can not be null!");
41         remove(identifier, original);
42         provider.addClassifierRules(change);
43     }
44
45     @Override
46     public void add(final InstanceIdentifier<Acl> identifier,
47                     final Acl change) {
48         Preconditions.checkNotNull(change, "Added object can not be null!");
49         provider.addClassifierRules(change);
50     }
51 }