Fix license header violations in net-virt
[netvirt.git] / openstack / net-virt / src / main / java / org / opendaylight / ovsdb / openstack / netvirt / api / SecurityServicesManager.java
1 /*
2  * Copyright (c) 2014, 2015 Red Hat, 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.api;
10
11 import java.util.List;
12
13 import org.opendaylight.neutron.spi.NeutronPort;
14 import org.opendaylight.neutron.spi.NeutronSecurityGroup;
15 import org.opendaylight.neutron.spi.Neutron_IPs;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.*;
17 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
18
19 /**
20  * Open vSwitch isolates Tenant Networks using VLANs on the Integration Bridge
21  * This class manages the provisioning of these VLANs
22  */
23 public interface SecurityServicesManager {
24     /**
25      * Is port security ready.
26      *
27      * @param intf the intf
28      * @return the boolean
29      */
30     boolean isPortSecurityReady(OvsdbTerminationPointAugmentation intf);
31     /**
32      * Gets security group in port.
33      *
34      * @param intf the intf
35      * @return the security group in port
36      */
37     NeutronSecurityGroup getSecurityGroupInPort(OvsdbTerminationPointAugmentation intf);
38      /**
39      * Gets the DHCP server port corresponding to a network.
40      *
41      * @param intf the intf
42      * @return the security group in port
43      */
44      NeutronPort getDHCPServerPort(OvsdbTerminationPointAugmentation intf);
45
46     /**
47      * Is the port a compute port.
48      *
49      * @param intf the intf
50      * @return the security group in port
51      */
52     boolean isComputePort(OvsdbTerminationPointAugmentation intf);
53
54     /**
55      * Is this the last port in the subnet to which interface belongs to.
56      *
57      * @param intf the intf
58      * @return the security group in port
59      */
60     boolean isLastPortinSubnet(Node node, OvsdbTerminationPointAugmentation intf);
61
62     /**
63      * Is this the last port in the bridge to which interface belongs to.
64      *
65      * @param intf the intf
66      * @return the security group in port
67      */
68     boolean isLastPortinBridge(Node node, OvsdbTerminationPointAugmentation intf);
69     /**
70      * Returns the  list of ip adddress assigned to the interface.
71      *
72      * @param intf the intf
73      * @return the security group in port
74      */
75     List<Neutron_IPs> getIpAddress(Node node, OvsdbTerminationPointAugmentation intf);
76 }