Merge "Adjusted OVSDB features to enable the Pax-exam tests"
[ovsdb.git] / openstack / net-virt / src / main / java / org / opendaylight / ovsdb / openstack / netvirt / SubnetHandler.java
1 /*
2  * Copyright (C) 2013 Red Hat, Inc.
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  * Authors : Madhu Venugopal, Brent Salisbury
9  */
10
11 package org.opendaylight.ovsdb.openstack.netvirt;
12
13 import org.opendaylight.controller.networkconfig.neutron.INeutronSubnetAware;
14 import org.opendaylight.controller.networkconfig.neutron.NeutronSubnet;
15
16 import org.slf4j.Logger;
17 import org.slf4j.LoggerFactory;
18
19 import java.net.HttpURLConnection;
20
21 public class SubnetHandler extends AbstractHandler implements INeutronSubnetAware {
22
23     static final Logger logger = LoggerFactory.getLogger(SubnetHandler.class);
24
25     @Override
26     public int canCreateSubnet(NeutronSubnet subnet) {
27         return HttpURLConnection.HTTP_CREATED;
28     }
29
30     @Override
31     public void neutronSubnetCreated(NeutronSubnet subnet) {
32         logger.debug("Neutron Subnet Creation : {}", subnet.toString());
33     }
34
35     @Override
36     public int canUpdateSubnet(NeutronSubnet delta, NeutronSubnet original) {
37         return HttpURLConnection.HTTP_CREATED;
38     }
39
40     @Override
41     public void neutronSubnetUpdated(NeutronSubnet subnet) {
42         // TODO Auto-generated method stub
43
44     }
45
46     @Override
47     public int canDeleteSubnet(NeutronSubnet subnet) {
48         // TODO Auto-generated method stub
49         return HttpURLConnection.HTTP_CREATED;
50     }
51
52     @Override
53     public void neutronSubnetDeleted(NeutronSubnet subnet) {
54         // TODO Auto-generated method stub
55
56     }
57
58     /**
59      * Process the event.
60      *
61      * @param abstractEvent the {@link org.opendaylight.ovsdb.openstack.netvirt.AbstractEvent} event to be handled.
62      * @see org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher
63      */
64     @Override
65     public void processEvent(AbstractEvent abstractEvent) {
66         if (!(abstractEvent instanceof NorthboundEvent)) {
67             logger.error("Unable to process abstract event " + abstractEvent);
68             return;
69         }
70         NorthboundEvent ev = (NorthboundEvent) abstractEvent;
71         switch (ev.getAction()) {
72             // TODO: add handling of events here, once callbacks do something
73             //       other than logging.
74             default:
75                 logger.warn("Unable to process event action " + ev.getAction());
76                 break;
77         }
78     }
79 }