2 * Copyright IBM Corporation, 2013. 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.controller.networkconfig.neutron;
11 import org.osgi.framework.BundleContext;
12 import org.osgi.framework.FrameworkUtil;
13 import org.osgi.framework.ServiceReference;
14 import org.slf4j.Logger;
15 import org.slf4j.LoggerFactory;
17 public class NeutronCRUDInterfaces {
18 private static final Logger logger = LoggerFactory
19 .getLogger(NeutronCRUDInterfaces.class);
21 public static INeutronNetworkCRUD getINeutronNetworkCRUD(Object o) {
22 INeutronNetworkCRUD answer = (INeutronNetworkCRUD) getInstances(INeutronNetworkCRUD.class, o);
26 public static INeutronSubnetCRUD getINeutronSubnetCRUD(Object o) {
27 INeutronSubnetCRUD answer = (INeutronSubnetCRUD) getInstances(INeutronSubnetCRUD.class, o);
31 public static INeutronPortCRUD getINeutronPortCRUD(Object o) {
32 INeutronPortCRUD answer = (INeutronPortCRUD) getInstances(INeutronPortCRUD.class, o);
36 public static INeutronRouterCRUD getINeutronRouterCRUD(Object o) {
37 INeutronRouterCRUD answer = (INeutronRouterCRUD) getInstances(INeutronRouterCRUD.class, o);
41 public static INeutronFloatingIPCRUD getINeutronFloatingIPCRUD(Object o) {
42 INeutronFloatingIPCRUD answer = (INeutronFloatingIPCRUD) getInstances(INeutronFloatingIPCRUD.class, o);
46 public static INeutronSecurityGroupCRUD getINeutronSecurityGroupCRUD(Object o) {
47 INeutronSecurityGroupCRUD answer = (INeutronSecurityGroupCRUD) getInstances(INeutronSecurityGroupCRUD.class, o);
51 public static INeutronSecurityRuleCRUD getINeutronSecurityRuleCRUD(Object o) {
52 INeutronSecurityRuleCRUD answer = (INeutronSecurityRuleCRUD) getInstances(INeutronSecurityRuleCRUD.class, o);
56 public static INeutronFirewallCRUD getINeutronFirewallCRUD(Object o) {
57 INeutronFirewallCRUD answer = (INeutronFirewallCRUD) getInstances(INeutronFirewallCRUD.class, o);
61 public static INeutronFirewallPolicyCRUD getINeutronFirewallPolicyCRUD(Object o) {
62 INeutronFirewallPolicyCRUD answer = (INeutronFirewallPolicyCRUD) getInstances(INeutronFirewallPolicyCRUD.class, o);
66 public static INeutronFirewallRuleCRUD getINeutronFirewallRuleCRUD(Object o) {
67 INeutronFirewallRuleCRUD answer = (INeutronFirewallRuleCRUD) getInstances(INeutronFirewallRuleCRUD.class, o);
71 public static INeutronLoadBalancerCRUD getINeutronLoadBalancerCRUD(Object o) {
72 INeutronLoadBalancerCRUD answer = (INeutronLoadBalancerCRUD) getInstances(INeutronLoadBalancerCRUD.class, o);
76 public static INeutronLoadBalancerPoolCRUD getINeutronLoadBalancerPoolCRUD(Object o) {
77 INeutronLoadBalancerPoolCRUD answer = (INeutronLoadBalancerPoolCRUD) getInstances(INeutronLoadBalancerPoolCRUD.class, o);
81 public static INeutronLoadBalancerListenerCRUD getINeutronLoadBalancerListenerCRUD(Object o) {
82 INeutronLoadBalancerListenerCRUD answer = (INeutronLoadBalancerListenerCRUD) getInstances(INeutronLoadBalancerListenerCRUD.class, o);
86 public static INeutronLoadBalancerHealthMonitorCRUD getINeutronLoadBalancerHealthMonitorCRUD(Object o) {
87 INeutronLoadBalancerHealthMonitorCRUD answer = (INeutronLoadBalancerHealthMonitorCRUD) getInstances(INeutronLoadBalancerHealthMonitorCRUD.class, o);
91 public static INeutronLoadBalancerPoolMemberCRUD getINeutronLoadBalancerPoolMemberCRUD(Object o) {
92 INeutronLoadBalancerPoolMemberCRUD answer = (INeutronLoadBalancerPoolMemberCRUD) getInstances(INeutronLoadBalancerPoolMemberCRUD.class, o);
96 public static Object getInstances(Class<?> clazz,Object bundle) {
98 BundleContext bCtx = FrameworkUtil.getBundle(bundle.getClass())
101 ServiceReference<?>[] services = null;
102 services = bCtx.getServiceReferences(clazz.getName(),
104 if (services != null) {
105 return bCtx.getService(services[0]);
107 } catch (Exception e) {
108 logger.error("Instance reference is NULL");