2 * Copyright (C) 2014 Red Hat, Inc. and others. All rights reserved.
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
9 package org.opendaylight.ovsdb.openstack.netvirt.translator.crud;
11 import java.util.List;
13 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityGroup;
16 * This interface defines the methods for CRUD of NB OpenStack Security Group objects
19 public interface INeutronSecurityGroupCRUD {
21 * Applications call this interface method to determine if a particular
22 * Security Group object exists
24 * @param uuid UUID of the Security Group object
28 boolean neutronSecurityGroupExists(String uuid);
31 * Applications call this interface method to return if a particular
32 * Security Group object exists
34 * @param uuid UUID of the Security Group object
35 * @return {@link org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityGroup}
36 * OpenStack Security Group class
39 NeutronSecurityGroup getNeutronSecurityGroup(String uuid);
42 * Applications call this interface method to return all Security Group objects
44 * @return List of OpenStackSecurity Groups objects
47 List<NeutronSecurityGroup> getAllNeutronSecurityGroups();
50 * Applications call this interface method to add a Security Group object to the
53 * @param input OpenStackSecurity Group object
54 * @return boolean on whether the object was added or not
57 boolean addNeutronSecurityGroup(NeutronSecurityGroup input);
60 * Applications call this interface method to remove a Neutron Security Group object to the
63 * @param uuid identifier for the security group object
64 * @return boolean on whether the object was removed or not
67 boolean removeNeutronSecurityGroup(String uuid);
70 * Applications call this interface method to edit a Security Group object
72 * @param uuid identifier of the security group object
73 * @param delta OpenStackSecurity Group object containing changes to apply
74 * @return boolean on whether the object was updated or not
77 boolean updateNeutronSecurityGroup(String uuid, NeutronSecurityGroup delta);
80 * Applications call this interface method to see if a MAC address is in use
82 * @param uuid identifier of the security group object
83 * @return boolean on whether the Security Groups is already in use
86 boolean neutronSecurityGroupInUse(String uuid);