Merge "Fix raw types in Neutron northbound"
[controller.git] / opendaylight / northbound / networkconfiguration / neutron / src / main / java / org / opendaylight / controller / networkconfig / neutron / northbound / NeutronSubnetRequest.java
1 /*
2  * Copyright IBM Corporation, 2013.  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.controller.networkconfig.neutron.northbound;
10
11 import java.util.List;
12 import javax.xml.bind.annotation.XmlAccessType;
13 import javax.xml.bind.annotation.XmlAccessorType;
14 import javax.xml.bind.annotation.XmlElement;
15 import javax.xml.bind.annotation.XmlRootElement;
16 import org.opendaylight.controller.networkconfig.neutron.NeutronSubnet;
17
18 @XmlRootElement
19 @XmlAccessorType(XmlAccessType.NONE)
20 public class NeutronSubnetRequest implements INeutronRequest<NeutronSubnet> {
21     // See OpenStack Network API v2.0 Reference for description of
22     // annotated attributes
23
24     @XmlElement(name="subnet")
25     NeutronSubnet singletonSubnet;
26
27     @XmlElement(name="subnets")
28     List<NeutronSubnet> bulkRequest;
29
30     @XmlElement(name="subnets_links")
31     List<NeutronPageLink> links;
32
33     NeutronSubnetRequest() {
34     }
35
36     public NeutronSubnetRequest(List<NeutronSubnet> bulkRequest, List<NeutronPageLink> links) {
37         this.bulkRequest = bulkRequest;
38         this.links = links;
39         this.singletonSubnet = null;
40     }
41
42     NeutronSubnetRequest(List<NeutronSubnet> bulk) {
43         bulkRequest = bulk;
44         singletonSubnet = null;
45         links = null;
46     }
47
48     NeutronSubnetRequest(NeutronSubnet subnet) {
49         singletonSubnet = subnet;
50         bulkRequest = null;
51         links = null;
52     }
53
54     @Override
55     public NeutronSubnet getSingleton() {
56         return singletonSubnet;
57     }
58
59     @Override
60     public List<NeutronSubnet> getBulk() {
61         return bulkRequest;
62     }
63
64     @Override
65     public boolean isSingleton() {
66         return (singletonSubnet != null);
67     }
68 }