Merge "Consolidate duplicated code from transcriber classes"
[neutron.git] / neutron-spi / src / main / java / org / opendaylight / neutron / spi / INeutronFirewallCRUD.java
1 /*
2  * Copyright (C) 2014 Red Hat, Inc.  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.neutron.spi;
10
11 import java.util.List;
12
13 /**
14  * This interface defines the methods for CRUD of NB OpenStack Firewall objects
15  */
16
17 public interface INeutronFirewallCRUD {
18     /**
19      * Applications call this interface method to determine if a particular
20      *Firewall object exists
21      *
22      * @param uuid
23      *            UUID of the Firewall object
24      * @return boolean
25      */
26
27     boolean neutronFirewallExists(String uuid);
28
29     /**
30      * Applications call this interface method to return if a particular
31      * Firewall object exists
32      *
33      * @param uuid
34      *            UUID of the Firewall object
35      * @return {@link org.opendaylight.neutron.spi.NeutronFirewall}
36      *          OpenStackFirewall class
37      */
38
39     NeutronFirewall getNeutronFirewall(String uuid);
40
41     /**
42      * Applications call this interface method to return all Firewall objects
43      *
44      * @return List of OpenStackNetworks objects
45      */
46
47     List<NeutronFirewall> getAllNeutronFirewalls();
48
49     /**
50      * Applications call this interface method to add a Firewall object to the
51      * concurrent map
52      *
53      * @param input
54      *            OpenStackNetwork object
55      * @return boolean on whether the object was added or not
56      */
57
58     boolean addNeutronFirewall(NeutronFirewall input);
59
60     /**
61      * Applications call this interface method to remove a Neutron Firewall object to the
62      * concurrent map
63      *
64      * @param uuid
65      *            identifier for the Firewall object
66      * @return boolean on whether the object was removed or not
67      */
68
69     boolean removeNeutronFirewall(String uuid);
70
71     /**
72      * Applications call this interface method to edit a Firewall object
73      *
74      * @param uuid
75      *            identifier of the Firewall object
76      * @param delta
77      *            OpenStackFirewall object containing changes to apply
78      * @return boolean on whether the object was updated or not
79      */
80
81     boolean updateNeutronFirewall(String uuid, NeutronFirewall delta);
82
83     /**
84      * Applications call this interface method to see if a MAC address is in use
85      *
86      * @param uuid
87      *            identifier of the Firewall object
88      * @return boolean on whether the macAddress is already associated with a
89      * port or not
90      */
91
92     boolean neutronFirewallInUse(String uuid);
93
94 }